diff --git a/distribution/entaxy-docker/ReadMe.md b/distribution/entaxy-docker/ReadMe.md deleted file mode 100644 index 1c7c1c3..0000000 --- a/distribution/entaxy-docker/ReadMe.md +++ /dev/null @@ -1,141 +0,0 @@ -## Docker compose для сборки и запуска Entaxy. - -Запуск локального окружения с несколькими docker контейнерами: -* Караф -* Брокер -* СУБД -* Менеджер артефактов - -Для начала клонируем репозиторий и переходим в корень проекта: -```bash -git clone -cd entaxy-framework -``` -Далее у нас есть разные варианты хранения необходимых для установки Entaxy артефактов. -### 1. Самый простой способ: локальный репозиторий артефактов включаеться в образ карафа. -В корневом POM находится профиль для деплоя артефактов в образ карафа: -```xml - - docker.file.repo - - - entaxy-maven-repo-file - file:./distribution/entaxy-docker/karaf/repo - - - -``` -Запускаем мевен деплой из корня проекта с этим профилем: -```bash -mvn deploy -P docker.file.repo -``` -И после успешной сборки запускаем контейнеры из директории проекта, в которой находится docker-compose.yml: -```bash -cd ./distribution/entaxy-docker -docker-compose up -``` -Или `docker compose up` для новых версий docker. -После запуска комманды мы будем видеть прогресс сборки образов, запуска контейнеров и логи запущенных приложений. Для остановки контейнеров достаточно нажать сочетание клавиш Ctrl+C или через команды запущенные из другого окна/вкладки терминала. -```bash -docker-compose stop -docker-compose start -``` -После запуска контейнеров открываем новый терминал и заходим в караф: -```bash -docker-compose exec karaf /opt/apache-karaf/bin/client -``` -или ssh клиент с дальнейшим вводом пароля (karaf) -```bash -ssh -p 8101 karaf@localhost -``` - -И в консоли карафа запускаем скрипт с установкой необходимых фич: -```bash -shell:source ./install.karaf -``` -Ждём окончания деплоя в караф. -(Не всегда полная установка проходит с первой попытки и тогда помогает повторный запуск `source install.karaf`) - -### 2. Reposilite: легковесный http репозиторий артефактов запускается в отдельном контейнере. -Комментируем в файле install.karaf строку начинающуюся с: -```bash -config:property-set -p org.ops4j.pax.url.mvn org.ops4j.pax.url.mvn.repositories file:/opt/apache-karaf/repo -``` -И убираем комментарий в строке начинающейся: -```bash -#config:property-set -p org.ops4j.pax.url.mvn org.ops4j.pax.url.mvn.repositories http://maven-repo/snapshots -``` - -Запускаем контейнеры из директории проекта, в которой находится docker-compose.yml: -```bash -cd ./distribution/entaxy-docker -docker-compose up -``` -Или `docker compose up` для новых версий docker. -После запуска комманды мы будем видеть прогресс сборки образов, запуска контейнеров и логи запущенных приложений. Для остановки контейнеров достаточно нажать сочетание клавиш Ctrl+C или через команды запущенные из другого окна/вкладки терминала. -```bash -docker-compose stop -docker-compose start -``` - -Для деплоя в reposilite добавляем учётные данные в конфигурацию мавена (`~/.m2/settings.xml`): -```xml - - - - entaxy-maven-repo - admin - aW7frfS9NPGrOnuNBMf9gyO0eXNRaCoOGtXHTcLU5akDFJ9ACiUJhgmZxlOKnLC5 - - - -``` -В корневом POM находится профиль для деплоя артефактов на сервер reposilite: -```xml - - docker.reposilite - - - entaxy-maven-repo - http://127.0.0.1:8081/snapshots - - - -``` -Запускаем мевен деплой из корня проекта с этим профилем: -```bash -mvn deploy -P docker.reposilite -``` -После успешной сборки открываем новый терминал и заходим в караф: -```bash -docker-compose exec karaf /opt/apache-karaf/bin/client -``` -или ssh клиент с дальнейшим вводом пароля (karaf) -```bash -ssh -p 8101 karaf@localhost -``` - -И в консоли карафа запускаем скрипт с установкой необходимых фич: -```bash -shell:source ./install.karaf -``` -Ждём окончания деплоя в караф. -(Не всегда полная установка проходит с первой попытки и тогда помогает повторный запуск `source install.karaf`) - - - -Также есть вариант с nexus -После старта получаем пароль для admin через команду: -`docker-compose exec nexus cat /nexus-data/admin.password`. -Через админку нужно разрешить анонимный деплой или настроить доступы. -Урл для install.karaf -`http://nexus:8081/repository/maven-snapshots/@id=local-nexus@snapshots@noreleases` - - - -Остановить все контейнеры -`docker-compose down` -Остановить и удалить хранилища с БД и репой -`docker-compose down -v` diff --git a/distribution/entaxy-docker/docker-compose.yml b/distribution/entaxy-docker/docker-compose.yml deleted file mode 100644 index 1837cf3..0000000 --- a/distribution/entaxy-docker/docker-compose.yml +++ /dev/null @@ -1,78 +0,0 @@ -version: '3' -services: - broker: - container_name: broker - image: vromero/activemq-artemis - restart: unless-stopped - environment: - - ARTEMIS_USERNAME=entaxy - - ARTEMIS_PASSWORD=entaxy - ports: - - 8161:8161 - - 61616:61616 - - db-postgres: - container_name: db-postgres -# image: postgres - build: ./postgres - restart: unless-stopped - volumes: - - db-vol:/var/lib/postgresql/data - # - /etc/localtime:/etc/localtime:ro - environment: - - POSTGRES_USER=entaxy - - POSTGRES_PASSWORD=entaxy - - POSTGRES_DB=cache - ports: - - 5432:5432 - - # db-mssql: - # container_name: db-mssql - # image: mcr.microsoft.com/mssql/server:2017-CU8-ubuntu - # restart: unless-stopped - # environment: - # - SA_PASSWORD=123mssql - # - ACCEPT_EULA=Y - # - POSTGRES_DB=cache - # ports: - # - 1433:1433 - -# nexus: -# container_name: nexus -# image: sonatype/nexus3 -# restart: unless-stopped -# volumes: -# - nexus-data:/nexus-data -# environment: -# - INSTALL4J_ADD_VM_PARAMS=-Xms2g -Xmx2g -XX:MaxDirectMemorySize=3g -# ports: -# - 8081:8081 - maven-repo: - container_name: maven-repo - build: ./reposilite -# image: dzikoysk/reposilite - restart: unless-stopped - volumes: - - nexus-data:/app/data - ports: - - 8081:80 - - karaf: -# image: apache/karaf:4.2.9 - build: - context: karaf/ - container_name: karaf -# environment: -# - ESB_ENTAXY_VERSION=1.8.0 -# - ESB_ENTAXY_MAVEN_REPO=http://nexus:8081/repository/maven-snapshots/@id=local-nexus@snapshots@noreleases - restart: unless-stopped - ports: - - 8101:8101 - - 8181:8181 - - 8080:8080 - -volumes: - db-vol: - driver: local - nexus-data: - driver: local \ No newline at end of file diff --git a/distribution/entaxy-docker/karaf/Dockerfile b/distribution/entaxy-docker/karaf/Dockerfile deleted file mode 100644 index 9f880b4..0000000 --- a/distribution/entaxy-docker/karaf/Dockerfile +++ /dev/null @@ -1,13 +0,0 @@ -FROM apache/karaf:4.2.9 - -COPY repo /opt/apache-karaf/repo -COPY init /opt/apache-karaf/etc/init - -COPY jre.properties /opt/apache-karaf/etc/ -COPY org.apache.karaf.cellar.groups.cfg /opt/apache-karaf/etc/ -COPY org.ops4j.datasource-entaxy.esb.cache.cfg /opt/apache-karaf/etc/ -COPY org.ops4j.datasource-entaxy.esb.db_connector.cfg /opt/apache-karaf/etc/ -COPY org.ops4j.datasource-entaxy.esb.storage.cfg /opt/apache-karaf/etc/ -COPY ru.entaxy.esb.cfg /opt/apache-karaf/etc/ -COPY ru.entaxy.esb.system.bridge.cfg /opt/apache-karaf/etc/ -COPY install.karaf /opt/apache-karaf/ diff --git a/distribution/entaxy-docker/karaf/init/entaxy-platform-connections.json b/distribution/entaxy-docker/karaf/init/entaxy-platform-connections.json deleted file mode 100644 index 25a8055..0000000 --- a/distribution/entaxy-docker/karaf/init/entaxy-platform-connections.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "connections": [ - { - "nodeType": "connection", - "uuid": "connection-uuid-1", - "name": "entaxy-file", - "adapterName": "fileAdapter", - "platform": true, - "pathParameter": "data/shared", - "properties": {}, - "options": { - "noop": true, - "fileName": "default.txt", - "allowNullBody": "true" - } - }, - { - "nodeType": "connection", - "uuid": "connection-uuid-2", - "name": "entaxy-broker", - "adapterName": "artemisAdapter", - "platform": true, - "pathParameter": "queue:entaxy.default", - "properties": { - "url": "(tcp://broker:61616)", - "username": "entaxy", - "password": "entaxy", - "maxConnections": "20", - "maxSessionsPerConnection": "100" - }, - "options": {} - }, - { - "nodeType": "connection", - "uuid": "connection-uuid-3", - "name": "entaxy-db-storage", - "adapterName": "postgresqlAdapter", - "platform": true, - "pathParameter": "entaxy.esb.storage", - "properties": {}, - "options": {} - }, - { - "nodeType": "connection", - "uuid": "connection-uuid-4", - "name": "entaxy-db-cache", - "adapterName": "postgresqlAdapter", - "platform": true, - "pathParameter": "entaxy.esb.cache", - "properties": {}, - "options": {} - } - ] -} diff --git a/distribution/entaxy-docker/karaf/install.karaf b/distribution/entaxy-docker/karaf/install.karaf deleted file mode 100644 index ca2d47a..0000000 --- a/distribution/entaxy-docker/karaf/install.karaf +++ /dev/null @@ -1,21 +0,0 @@ -ESB_ENTAXY_VERSION=1.8.0 - -echo "Maven repo=$ESB_ENTAXY_MAVEN_REPO, Version=$ESB_ENTAXY_VERSION" - -# docker.file.repo -config:property-set -p org.ops4j.pax.url.mvn org.ops4j.pax.url.mvn.repositories file:/opt/apache-karaf/repo@id=local-repo@snapshots@noreleases,https://repo1.maven.org/maven2@id=central,https://repository.apache.org/content/groups/snapshots-group@id=apache@snapshots@noreleases,https://oss.sonatype.org/content/repositories/ops4j-snapshots@id=ops4j.sonatype.snapshots.deploy@snapshots@noreleases -# docker.reposilite -#config:property-set -p org.ops4j.pax.url.mvn org.ops4j.pax.url.mvn.repositories http://maven-repo/releases@id=local-releases@update=always,http://maven-repo/snapshots@id=local-snapshots@snapshots@noreleases@update=always,https://repo1.maven.org/maven2@id=central,https://repository.apache.org/content/groups/snapshots-group@id=apache@snapshots@noreleases,https://oss.sonatype.org/content/repositories/ops4j-snapshots@id=ops4j.sonatype.snapshots.deploy@snapshots@noreleases - -feature:repo-add mvn:ru.entaxy.esb/karaf-features/$ESB_ENTAXY_VERSION/xml/features -echo "feature:install entaxy-all" -feature:install entaxy-all -feature:repo-add mvn:ru.entaxy.esb.platform.runtime/base/$ESB_ENTAXY_VERSION/xml/features -echo "feature:install base" -feature:install base -feature:repo-add mvn:ru.entaxy.esb.platform.runtime/core/$ESB_ENTAXY_VERSION/xml/features -echo "feature:install core" -feature:install core -feature:repo-add mvn:ru.entaxy.esb.platform.runtime.modules/uniform-service/$ESB_ENTAXY_VERSION/xml/features -echo "feature:install entaxy-uniform-service" -feature:install entaxy-uniform-service \ No newline at end of file diff --git a/distribution/entaxy-docker/karaf/jre.properties b/distribution/entaxy-docker/karaf/jre.properties deleted file mode 100644 index 3d884c7..0000000 --- a/distribution/entaxy-docker/karaf/jre.properties +++ /dev/null @@ -1,725 +0,0 @@ -################################################################################ -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -################################################################################ -# -# Java platform package export properties. -# -# Standard package set. Note that: -# - javax.transaction* is exported with a mandatory attribute -jre-1.6=\ - javax.accessibility, \ - javax.activation;version="1.1", \ - javax.activity, \ - javax.annotation;version="1.0", \ - javax.annotation.processing;version="1.0", \ - javax.crypto, \ - javax.crypto.interfaces, \ - javax.crypto.spec, \ - javax.imageio, \ - javax.imageio.event, \ - javax.imageio.metadata, \ - javax.imageio.plugins.bmp, \ - javax.imageio.plugins.jpeg, \ - javax.imageio.spi, \ - javax.imageio.stream, \ - javax.jws, \ - javax.jws.soap, \ - javax.lang.model, \ - javax.lang.model.element, \ - javax.lang.model.type, \ - javax.lang.model.util, \ - javax.management, \ - javax.management.loading, \ - javax.management.modelmbean, \ - javax.management.monitor, \ - javax.management.openmbean, \ - javax.management.relation, \ - javax.management.remote, \ - javax.management.remote.rmi, \ - javax.management.timer, \ - javax.naming, \ - javax.naming.directory, \ - javax.naming.event, \ - javax.naming.ldap, \ - javax.naming.spi, \ - javax.net, \ - javax.net.ssl, \ - javax.print, \ - javax.print.attribute, \ - javax.print.attribute.standard, \ - javax.print.event, \ - javax.rmi, \ - javax.rmi.CORBA, \ - javax.rmi.ssl, \ - javax.script, \ - javax.security.auth, \ - javax.security.auth.callback, \ - javax.security.auth.kerberos, \ - javax.security.auth.login, \ - javax.security.auth.spi, \ - javax.security.auth.x500, \ - javax.security.cert, \ - javax.security.sasl, \ - javax.sound.midi, \ - javax.sound.midi.spi, \ - javax.sound.sampled, \ - javax.sound.sampled.spi, \ - javax.sql, \ - javax.sql.rowset, \ - javax.sql.rowset.serial, \ - javax.sql.rowset.spi, \ - javax.swing, \ - javax.swing.border, \ - javax.swing.colorchooser, \ - javax.swing.event, \ - javax.swing.filechooser, \ - javax.swing.plaf, \ - javax.swing.plaf.basic, \ - javax.swing.plaf.metal, \ - javax.swing.plaf.multi, \ - javax.swing.plaf.synth, \ - javax.swing.table, \ - javax.swing.text, \ - javax.swing.text.html, \ - javax.swing.text.html.parser, \ - javax.swing.text.rtf, \ - javax.swing.tree, \ - javax.swing.undo, \ - javax.tools, \ - javax.transaction; javax.transaction.xa; partial=true; mandatory:=partial, \ - javax.xml, \ - javax.xml.bind;version="2.2.1", \ - javax.xml.bind.annotation;version="2.2.1", \ - javax.xml.bind.annotation.adapters;version="2.2.1", \ - javax.xml.bind.attachment;version="2.2.1", \ - javax.xml.bind.helpers;version="2.2.1", \ - javax.xml.bind.util;version="2.2.1", \ - javax.xml.crypto, \ - javax.xml.crypto.dom, \ - javax.xml.crypto.dsig, \ - javax.xml.crypto.dsig.dom, \ - javax.xml.crypto.dsig.keyinfo, \ - javax.xml.crypto.dsig.spec, \ - javax.xml.datatype, \ - javax.xml.namespace, \ - javax.xml.parsers, \ - javax.xml.soap;version="1.3", \ - javax.xml.stream;version="1.2", \ - javax.xml.stream.events;version="1.2", \ - javax.xml.stream.util;version="1.2", \ - javax.xml.transform, \ - javax.xml.transform.dom, \ - javax.xml.transform.sax, \ - javax.xml.transform.stax, \ - javax.xml.transform.stream, \ - javax.xml.validation, \ - javax.xml.ws;version="2.2", \ - javax.xml.ws.handler;version="2.2", \ - javax.xml.ws.handler.soap;version="2.2", \ - javax.xml.ws.http;version="2.2", \ - javax.xml.ws.soap;version="2.2", \ - javax.xml.ws.spi;version="2.2", \ - javax.xml.ws.wsaddressing;version="2.2", \ - javax.xml.ws.spi.http;version="2.2", \ - javax.xml.xpath, \ - org.ietf.jgss, \ - org.omg.CORBA, \ - org.omg.CORBA_2_3, \ - org.omg.CORBA_2_3.portable, \ - org.omg.CORBA.DynAnyPackage, \ - org.omg.CORBA.ORBPackage, \ - org.omg.CORBA.portable, \ - org.omg.CORBA.TypeCodePackage, \ - org.omg.CosNaming, \ - org.omg.CosNaming.NamingContextExtPackage, \ - org.omg.CosNaming.NamingContextPackage, \ - org.omg.Dynamic, \ - org.omg.DynamicAny, \ - org.omg.DynamicAny.DynAnyFactoryPackage, \ - org.omg.DynamicAny.DynAnyPackage, \ - org.omg.IOP, \ - org.omg.IOP.CodecFactoryPackage, \ - org.omg.IOP.CodecPackage, \ - org.omg.Messaging, \ - org.omg.PortableInterceptor, \ - org.omg.PortableInterceptor.ORBInitInfoPackage, \ - org.omg.PortableServer, \ - org.omg.PortableServer.CurrentPackage, \ - org.omg.PortableServer.POAManagerPackage, \ - org.omg.PortableServer.POAPackage, \ - org.omg.PortableServer.portable, \ - org.omg.PortableServer.ServantLocatorPackage, \ - org.omg.SendingContext, \ - org.omg.stub.java.rmi, \ - org.omg.stub.javax.management.remote.rmi, \ - org.w3c.dom, \ - org.w3c.dom.bootstrap, \ - org.w3c.dom.css, \ - org.w3c.dom.events, \ - org.w3c.dom.html, \ - org.w3c.dom.ls, \ - org.w3c.dom.ranges, \ - org.w3c.dom.stylesheets, \ - org.w3c.dom.traversal, \ - org.w3c.dom.views, \ - org.w3c.dom.xpath, \ - org.xml.sax, \ - org.xml.sax.ext, \ - org.xml.sax.helpers -# Standard package set. Note that: -# - javax.transaction* is exported with a mandatory attribute -jre-1.7=\ - javax.accessibility, \ - javax.activation;version="1.1", \ - javax.activity, \ - javax.annotation;version="1.0", \ - javax.annotation.processing;version="1.0", \ - javax.crypto, \ - javax.crypto.interfaces, \ - javax.crypto.spec, \ - javax.imageio, \ - javax.imageio.event, \ - javax.imageio.metadata, \ - javax.imageio.plugins.bmp, \ - javax.imageio.plugins.jpeg, \ - javax.imageio.spi, \ - javax.imageio.stream, \ - javax.jws, \ - javax.jws.soap, \ - javax.lang.model, \ - javax.lang.model.element, \ - javax.lang.model.type, \ - javax.lang.model.util, \ - javax.management, \ - javax.management.loading, \ - javax.management.modelmbean, \ - javax.management.monitor, \ - javax.management.openmbean, \ - javax.management.relation, \ - javax.management.remote, \ - javax.management.remote.rmi, \ - javax.management.timer, \ - javax.naming, \ - javax.naming.directory, \ - javax.naming.event, \ - javax.naming.ldap, \ - javax.naming.spi, \ - javax.net, \ - javax.net.ssl, \ - javax.print, \ - javax.print.attribute, \ - javax.print.attribute.standard, \ - javax.print.event, \ - javax.rmi, \ - javax.rmi.CORBA, \ - javax.rmi.ssl, \ - javax.script, \ - javax.security.auth, \ - javax.security.auth.callback, \ - javax.security.auth.kerberos, \ - javax.security.auth.login, \ - javax.security.auth.spi, \ - javax.security.auth.x500, \ - javax.security.cert, \ - javax.security.sasl, \ - javax.sound.midi, \ - javax.sound.midi.spi, \ - javax.sound.sampled, \ - javax.sound.sampled.spi, \ - javax.sql, \ - javax.sql.rowset, \ - javax.sql.rowset.serial, \ - javax.sql.rowset.spi, \ - javax.swing, \ - javax.swing.border, \ - javax.swing.colorchooser, \ - javax.swing.event, \ - javax.swing.filechooser, \ - javax.swing.plaf, \ - javax.swing.plaf.basic, \ - javax.swing.plaf.metal, \ - javax.swing.plaf.multi, \ - javax.swing.plaf.synth, \ - javax.swing.table, \ - javax.swing.text, \ - javax.swing.text.html, \ - javax.swing.text.html.parser, \ - javax.swing.text.rtf, \ - javax.swing.tree, \ - javax.swing.undo, \ - javax.tools, \ - javax.transaction; javax.transaction.xa; partial=true; mandatory:=partial, \ - javax.xml, \ - javax.xml.bind;version="2.2.1", \ - javax.xml.bind.annotation;version="2.2.1", \ - javax.xml.bind.annotation.adapters;version="2.2.1", \ - javax.xml.bind.attachment;version="2.2.1", \ - javax.xml.bind.helpers;version="2.2.1", \ - javax.xml.bind.util;version="2.2.1", \ - javax.xml.crypto, \ - javax.xml.crypto.dom, \ - javax.xml.crypto.dsig, \ - javax.xml.crypto.dsig.dom, \ - javax.xml.crypto.dsig.keyinfo, \ - javax.xml.crypto.dsig.spec, \ - javax.xml.datatype, \ - javax.xml.namespace, \ - javax.xml.parsers, \ - javax.xml.soap;version="1.3", \ - javax.xml.stream;version="1.2", \ - javax.xml.stream.events;version="1.2", \ - javax.xml.stream.util;version="1.2", \ - javax.xml.transform, \ - javax.xml.transform.dom, \ - javax.xml.transform.sax, \ - javax.xml.transform.stax, \ - javax.xml.transform.stream, \ - javax.xml.validation, \ - javax.xml.xpath, \ - org.ietf.jgss, \ - org.omg.CORBA, \ - org.omg.CORBA_2_3, \ - org.omg.CORBA_2_3.portable, \ - org.omg.CORBA.DynAnyPackage, \ - org.omg.CORBA.ORBPackage, \ - org.omg.CORBA.portable, \ - org.omg.CORBA.TypeCodePackage, \ - org.omg.CosNaming, \ - org.omg.CosNaming.NamingContextExtPackage, \ - org.omg.CosNaming.NamingContextPackage, \ - org.omg.Dynamic, \ - org.omg.DynamicAny, \ - org.omg.DynamicAny.DynAnyFactoryPackage, \ - org.omg.DynamicAny.DynAnyPackage, \ - org.omg.IOP, \ - org.omg.IOP.CodecFactoryPackage, \ - org.omg.IOP.CodecPackage, \ - org.omg.Messaging, \ - org.omg.PortableInterceptor, \ - org.omg.PortableInterceptor.ORBInitInfoPackage, \ - org.omg.PortableServer, \ - org.omg.PortableServer.CurrentPackage, \ - org.omg.PortableServer.POAManagerPackage, \ - org.omg.PortableServer.POAPackage, \ - org.omg.PortableServer.portable, \ - org.omg.PortableServer.ServantLocatorPackage, \ - org.omg.SendingContext, \ - org.omg.stub.java.rmi, \ - org.omg.stub.javax.management.remote.rmi, \ - org.w3c.dom, \ - org.w3c.dom.bootstrap, \ - org.w3c.dom.css, \ - org.w3c.dom.events, \ - org.w3c.dom.html, \ - org.w3c.dom.ls, \ - org.w3c.dom.ranges, \ - org.w3c.dom.stylesheets, \ - org.w3c.dom.traversal, \ - org.w3c.dom.views, \ - org.w3c.dom.xpath, \ - org.xml.sax, \ - org.xml.sax.ext, \ - org.xml.sax.helpers, \ - com.sun.nio.sctp -jre-1.8=\ - javax.accessibility, \ - javax.activity, \ - javax.annotation;version="1.0", \ - javax.annotation.processing;version="1.0", \ - javax.crypto, \ - javax.crypto.interfaces, \ - javax.crypto.spec, \ - javax.imageio, \ - javax.imageio.event, \ - javax.imageio.metadata, \ - javax.imageio.plugins.bmp, \ - javax.imageio.plugins.jpeg, \ - javax.imageio.spi, \ - javax.imageio.stream, \ - javax.jws, \ - javax.jws.soap, \ - javax.lang.model, \ - javax.lang.model.element, \ - javax.lang.model.type, \ - javax.lang.model.util, \ - javax.management, \ - javax.management.loading, \ - javax.management.modelmbean, \ - javax.management.monitor, \ - javax.management.openmbean, \ - javax.management.relation, \ - javax.management.remote, \ - javax.management.remote.rmi, \ - javax.management.timer, \ - javax.naming, \ - javax.naming.directory, \ - javax.naming.event, \ - javax.naming.ldap, \ - javax.naming.spi, \ - javax.net, \ - javax.net.ssl, \ - javax.print, \ - javax.print.attribute, \ - javax.print.attribute.standard, \ - javax.print.event, \ - javax.rmi, \ - javax.rmi.CORBA, \ - javax.rmi.ssl, \ - javax.script, \ - javax.security.auth, \ - javax.security.auth.callback, \ - javax.security.auth.kerberos, \ - javax.security.auth.login, \ - javax.security.auth.spi, \ - javax.security.auth.x500, \ - javax.security.cert, \ - javax.security.sasl, \ - javax.sound.midi, \ - javax.sound.midi.spi, \ - javax.sound.sampled, \ - javax.sound.sampled.spi, \ - javax.sql, \ - javax.sql.rowset, \ - javax.sql.rowset.serial, \ - javax.sql.rowset.spi, \ - javax.swing, \ - javax.swing.border, \ - javax.swing.colorchooser, \ - javax.swing.event, \ - javax.swing.filechooser, \ - javax.swing.plaf, \ - javax.swing.plaf.basic, \ - javax.swing.plaf.metal, \ - javax.swing.plaf.multi, \ - javax.swing.plaf.synth, \ - javax.swing.table, \ - javax.swing.text, \ - javax.swing.text.html, \ - javax.swing.text.html.parser, \ - javax.swing.text.rtf, \ - javax.swing.tree, \ - javax.swing.undo, \ - javax.tools, \ - javax.transaction; javax.transaction.xa; partial=true; mandatory:=partial, \ - javax.xml, \ - javax.xml.bind;version="2.2.8", \ - javax.xml.bind.annotation;version="2.2.8", \ - javax.xml.bind.annotation.adapters;version="2.2.8", \ - javax.xml.bind.attachment;version="2.2.8", \ - javax.xml.bind.helpers;version="2.2.8", \ - javax.xml.bind.util;version="2.2.8", \ - javax.xml.crypto, \ - javax.xml.crypto.dom, \ - javax.xml.crypto.dsig, \ - javax.xml.crypto.dsig.dom, \ - javax.xml.crypto.dsig.keyinfo, \ - javax.xml.crypto.dsig.spec, \ - javax.xml.datatype, \ - javax.xml.namespace, \ - javax.xml.parsers, \ - javax.xml.stream;version="1.2", \ - javax.xml.stream.events;version="1.2", \ - javax.xml.stream.util;version="1.2", \ - javax.xml.transform, \ - javax.xml.transform.dom, \ - javax.xml.transform.sax, \ - javax.xml.transform.stax, \ - javax.xml.transform.stream, \ - javax.xml.validation, \ - javax.xml.ws;version="2.2", \ - javax.xml.ws.handler;version="2.2", \ - javax.xml.ws.handler.soap;version="2.2", \ - javax.xml.ws.http;version="2.2", \ - javax.xml.ws.soap;version="2.2", \ - javax.xml.ws.spi;version="2.2", \ - javax.xml.ws.wsaddressing;version="2.2", \ - javax.xml.ws.spi.http;version="2.2", \ - javax.xml.xpath, \ - javafx.animation, \ - javafx.application, \ - javafx.beans, \ - javafx.beans.binding, \ - javafx.beans.property, \ - javafx.beans.property.adapter, \ - javafx.beans.value, \ - javafx.collections, \ - javafx.collections.transform, \ - javafx.concurrent, \ - javafx.css, \ - javafx.embed.swing, \ - javafx.embed.swt, \ - javafx.event, \ - javafx.fxml, \ - javafx.geometry, \ - javafx.print, \ - javafx.scene, \ - javafx.scene.canvas, \ - javafx.scene.chart, \ - javafx.scene.control, \ - javafx.scene.control.cell, \ - javafx.scene.effect, \ - javafx.scene.image, \ - javafx.scene.input, \ - javafx.scene.layout, \ - javafx.scene.media, \ - javafx.scene.paint, \ - javafx.scene.shape, \ - javafx.scene.text, \ - javafx.scene.transform, \ - javafx.scene.web, \ - javafx.stage, \ - javafx.util, \ - javafx.util.converter, \ - netscape.javascript, \ - org.ietf.jgss, \ - org.omg.CORBA, \ - org.omg.CORBA_2_3, \ - org.omg.CORBA_2_3.portable, \ - org.omg.CORBA.DynAnyPackage, \ - org.omg.CORBA.ORBPackage, \ - org.omg.CORBA.portable, \ - org.omg.CORBA.TypeCodePackage, \ - org.omg.CosNaming, \ - org.omg.CosNaming.NamingContextExtPackage, \ - org.omg.CosNaming.NamingContextPackage, \ - org.omg.Dynamic, \ - org.omg.DynamicAny, \ - org.omg.DynamicAny.DynAnyFactoryPackage, \ - org.omg.DynamicAny.DynAnyPackage, \ - org.omg.IOP, \ - org.omg.IOP.CodecFactoryPackage, \ - org.omg.IOP.CodecPackage, \ - org.omg.Messaging, \ - org.omg.PortableInterceptor, \ - org.omg.PortableInterceptor.ORBInitInfoPackage, \ - org.omg.PortableServer, \ - org.omg.PortableServer.CurrentPackage, \ - org.omg.PortableServer.POAManagerPackage, \ - org.omg.PortableServer.POAPackage, \ - org.omg.PortableServer.portable, \ - org.omg.PortableServer.ServantLocatorPackage, \ - org.omg.SendingContext, \ - org.omg.stub.java.rmi, \ - org.omg.stub.javax.management.remote.rmi, \ - org.w3c.dom, \ - org.w3c.dom.bootstrap, \ - org.w3c.dom.css, \ - org.w3c.dom.events, \ - org.w3c.dom.html, \ - org.w3c.dom.ls, \ - org.w3c.dom.ranges, \ - org.w3c.dom.stylesheets, \ - org.w3c.dom.traversal, \ - org.w3c.dom.views, \ - org.w3c.dom.xpath, \ - org.xml.sax, \ - org.xml.sax.ext, \ - org.xml.sax.helpers, \ - com.sun.nio.sctp, \ - sun.nio.ch, \ - com.sun.management -jre-9=\ - javax.accessibility, \ - javax.activation;version="1.2", \ - javax.activity, \ - javax.annotation;version="1.0", \ - javax.annotation.processing;version="1.0", \ - javax.crypto, \ - javax.crypto.interfaces, \ - javax.crypto.spec, \ - javax.imageio, \ - javax.imageio.event, \ - javax.imageio.metadata, \ - javax.imageio.plugins.bmp, \ - javax.imageio.plugins.jpeg, \ - javax.imageio.spi, \ - javax.imageio.stream, \ - javax.lang.model, \ - javax.lang.model.element, \ - javax.lang.model.type, \ - javax.lang.model.util, \ - javax.management, \ - javax.management.loading, \ - javax.management.modelmbean, \ - javax.management.monitor, \ - javax.management.openmbean, \ - javax.management.relation, \ - javax.management.remote, \ - javax.management.remote.rmi, \ - javax.management.timer, \ - javax.naming, \ - javax.naming.directory, \ - javax.naming.event, \ - javax.naming.ldap, \ - javax.naming.spi, \ - javax.net, \ - javax.net.ssl, \ - javax.print, \ - javax.print.attribute, \ - javax.print.attribute.standard, \ - javax.print.event, \ - javax.rmi, \ - javax.rmi.CORBA, \ - javax.rmi.ssl, \ - javax.script, \ - javax.security.auth, \ - javax.security.auth.callback, \ - javax.security.auth.kerberos, \ - javax.security.auth.login, \ - javax.security.auth.spi, \ - javax.security.auth.x500, \ - javax.security.cert, \ - javax.security.sasl, \ - javax.sound.midi, \ - javax.sound.midi.spi, \ - javax.sound.sampled, \ - javax.sound.sampled.spi, \ - javax.sql, \ - javax.sql.rowset, \ - javax.sql.rowset.serial, \ - javax.sql.rowset.spi, \ - javax.swing, \ - javax.swing.border, \ - javax.swing.colorchooser, \ - javax.swing.event, \ - javax.swing.filechooser, \ - javax.swing.plaf, \ - javax.swing.plaf.basic, \ - javax.swing.plaf.metal, \ - javax.swing.plaf.multi, \ - javax.swing.plaf.synth, \ - javax.swing.table, \ - javax.swing.text, \ - javax.swing.text.html, \ - javax.swing.text.html.parser, \ - javax.swing.text.rtf, \ - javax.swing.tree, \ - javax.swing.undo, \ - javax.tools, \ - javax.transaction; javax.transaction.xa; partial=true; mandatory:=partial, \ - javax.xml, \ - javax.xml.bind;version="2.3.0", \ - javax.xml.bind.annotation;version="2.3.0", \ - javax.xml.bind.annotation.adapters;version="2.3.0", \ - javax.xml.bind.attachment;version="2.3.0", \ - javax.xml.bind.helpers;version="2.3.0", \ - javax.xml.bind.util;version="2.3.0", \ - javax.xml.crypto, \ - javax.xml.crypto.dom, \ - javax.xml.crypto.dsig, \ - javax.xml.crypto.dsig.dom, \ - javax.xml.crypto.dsig.keyinfo, \ - javax.xml.crypto.dsig.spec, \ - javax.xml.datatype, \ - javax.xml.namespace, \ - javax.xml.parsers, \ - javax.xml.stream;version="1.2", \ - javax.xml.stream.events;version="1.2", \ - javax.xml.stream.util;version="1.2", \ - javax.xml.transform, \ - javax.xml.transform.dom, \ - javax.xml.transform.sax, \ - javax.xml.transform.stax, \ - javax.xml.transform.stream, \ - javax.xml.validation, \ - javax.xml.xpath, \ - javafx.animation, \ - javafx.application, \ - javafx.beans, \ - javafx.beans.binding, \ - javafx.beans.property, \ - javafx.beans.property.adapter, \ - javafx.beans.value, \ - javafx.collections, \ - javafx.collections.transformation, \ - javafx.concurrent, \ - javafx.css, \ - javafx.embed.swing, \ - javafx.embed.swt, \ - javafx.event, \ - javafx.fxml, \ - javafx.geometry, \ - javafx.print, \ - javafx.scene, \ - javafx.scene.canvas, \ - javafx.scene.chart, \ - javafx.scene.control, \ - javafx.scene.control.cell, \ - javafx.scene.effect, \ - javafx.scene.image, \ - javafx.scene.input, \ - javafx.scene.layout, \ - javafx.scene.media, \ - javafx.scene.paint, \ - javafx.scene.shape, \ - javafx.scene.text, \ - javafx.scene.transform, \ - javafx.scene.web, \ - javafx.stage, \ - javafx.util, \ - javafx.util.converter, \ - netscape.javascript, \ - org.ietf.jgss, \ - org.omg.CORBA, \ - org.omg.CORBA_2_3, \ - org.omg.CORBA_2_3.portable, \ - org.omg.CORBA.DynAnyPackage, \ - org.omg.CORBA.ORBPackage, \ - org.omg.CORBA.portable, \ - org.omg.CORBA.TypeCodePackage, \ - org.omg.CosNaming, \ - org.omg.CosNaming.NamingContextExtPackage, \ - org.omg.CosNaming.NamingContextPackage, \ - org.omg.Dynamic, \ - org.omg.DynamicAny, \ - org.omg.DynamicAny.DynAnyFactoryPackage, \ - org.omg.DynamicAny.DynAnyPackage, \ - org.omg.IOP, \ - org.omg.IOP.CodecFactoryPackage, \ - org.omg.IOP.CodecPackage, \ - org.omg.Messaging, \ - org.omg.PortableInterceptor, \ - org.omg.PortableInterceptor.ORBInitInfoPackage, \ - org.omg.PortableServer, \ - org.omg.PortableServer.CurrentPackage, \ - org.omg.PortableServer.POAManagerPackage, \ - org.omg.PortableServer.POAPackage, \ - org.omg.PortableServer.portable, \ - org.omg.PortableServer.ServantLocatorPackage, \ - org.omg.SendingContext, \ - org.omg.stub.java.rmi, \ - org.omg.stub.javax.management.remote.rmi, \ - org.w3c.dom, \ - org.w3c.dom.bootstrap, \ - org.w3c.dom.css, \ - org.w3c.dom.events, \ - org.w3c.dom.html, \ - org.w3c.dom.ls, \ - org.w3c.dom.ranges, \ - org.w3c.dom.stylesheets, \ - org.w3c.dom.traversal, \ - org.w3c.dom.views, \ - org.w3c.dom.xpath, \ - org.xml.sax, \ - org.xml.sax.ext, \ - org.xml.sax.helpers, \ - com.sun.nio.sctp, \ - sun.nio.ch, \ - com.sun.management -jre-10=${jre-9} -jre-11=${jre-10} \ No newline at end of file diff --git a/distribution/entaxy-docker/karaf/org.apache.karaf.cellar.groups.cfg b/distribution/entaxy-docker/karaf/org.apache.karaf.cellar.groups.cfg deleted file mode 100644 index 8fc03b5..0000000 --- a/distribution/entaxy-docker/karaf/org.apache.karaf.cellar.groups.cfg +++ /dev/null @@ -1,68 +0,0 @@ -# -# This property stores the cluster groups for which the local node is member -# -groups = default - -# -# Filtering of the bundles in the default cluster group -# -default.bundle.whitelist.inbound=* -default.bundle.whitelist.outbound=* -default.bundle.blacklist.inbound=none -default.bundle.blacklist.outbound=none - -# -# Filtering of the configurations in the default cluster group -# -default.config.whitelist.inbound=* -default.config.whitelist.outbound=* -default.config.blacklist.inbound=org.apache.felix.fileinstall*, \ - org.apache.karaf.management, \ - org.apache.karaf.shell, \ - org.ops4j.pax.web, \ - org.apache.aries.transaction, \ - org.ops4j.pax.logging, \ - org.apache.karaf.cellar.node, \ - org.apache.karaf.cellar.groups.cfg -default.config.blacklist.outbound=org.apache.felix.fileinstall*, \ - org.apache.karaf.management, \ - org.apache.karaf.shell, \ - org.ops4j.pax.web, \ - org.apache.aries.transaction, \ - org.ops4j.pax.logging, \ - org.apache.karaf.cellar.node, \ - org.apache.karaf.cellar.groups.cfg - - -# -# Filtering of the features in the default cluster group -# -default.feature.whitelist.inbound=* -default.feature.whitelist.outbound=* -default.feature.blacklist.inbound=none -default.feature.blacklist.outbound=none - -# -# The following properties define the behavior to use when the node joins the cluster (the usage of the bootstrap -# synchronizer), per cluster group and per resource. -# The following values are accepted: -# disabled: means that the synchronizer doesn't sync cluster group and node states -# cluster: the synchronizer retrieves the state from the cluster group first (pull first), and push the node the state -# to the cluster group after (push after) -# node: the synchronizer push the node state to the cluster group (push first), and pull the state from the cluster group -# after (pull after) -# clusterOnly: the cluster is the "master", the node only retrieves and applies the cluster group state, nothing is -# pushed to the cluster group -# nodeOnly: the node is the "master", the node pushes his state to the cluster group, nothing is pulled from the -# cluster group -# -default.bundle.sync = disabled -default.config.sync = disabled -default.feature.sync = disabled -default.obr.urls.sync = disabled -default.balanced.servlet.sync = disabled - -default.event.blacklist.inbound = none -default.event.blacklist.outbound = none -default.event.whitelist.inbound = subscription -default.event.whitelist.outbound = subscription diff --git a/distribution/entaxy-docker/karaf/org.ops4j.datasource-entaxy.esb.cache.cfg b/distribution/entaxy-docker/karaf/org.ops4j.datasource-entaxy.esb.cache.cfg deleted file mode 100644 index f14cd19..0000000 --- a/distribution/entaxy-docker/karaf/org.ops4j.datasource-entaxy.esb.cache.cfg +++ /dev/null @@ -1,10 +0,0 @@ -dataSourceName=entaxy.esb.cache -osgi.jdbc.driver.name=PostgreSQL JDBC Driver -serverName=db-postgres -portNumber=5432 -databaseName=cache -user=entaxy -password=entaxy -pool=dbcp2 -xa=true -jdbc.pool.maxTotal=100 diff --git a/distribution/entaxy-docker/karaf/org.ops4j.datasource-entaxy.esb.db_connector.cfg b/distribution/entaxy-docker/karaf/org.ops4j.datasource-entaxy.esb.db_connector.cfg deleted file mode 100644 index cb8f85b..0000000 --- a/distribution/entaxy-docker/karaf/org.ops4j.datasource-entaxy.esb.db_connector.cfg +++ /dev/null @@ -1,10 +0,0 @@ -dataSourceName=entaxy.esb.db_connector -osgi.jdbc.driver.name=PostgreSQL JDBC Driver -serverName=db-postgres -portNumber=5432 -databaseName=db_connector_test -user=entaxy -password=entaxy -pool=dbcp2 -xa=true -jdbc.pool.maxTotal=100 diff --git a/distribution/entaxy-docker/karaf/org.ops4j.datasource-entaxy.esb.storage.cfg b/distribution/entaxy-docker/karaf/org.ops4j.datasource-entaxy.esb.storage.cfg deleted file mode 100644 index 8d921eb..0000000 --- a/distribution/entaxy-docker/karaf/org.ops4j.datasource-entaxy.esb.storage.cfg +++ /dev/null @@ -1,10 +0,0 @@ -dataSourceName=entaxy.esb.storage -osgi.jdbc.driver.name=PostgreSQL JDBC Driver -serverName=db-postgres -portNumber=5432 -databaseName=esb_entaxy -user=entaxy -password=entaxy -pool=dbcp2 -xa=true -jdbc.pool.maxTotal=100 diff --git a/distribution/entaxy-docker/karaf/ru.entaxy.esb.cfg b/distribution/entaxy-docker/karaf/ru.entaxy.esb.cfg deleted file mode 100644 index 66b84cc..0000000 --- a/distribution/entaxy-docker/karaf/ru.entaxy.esb.cfg +++ /dev/null @@ -1,20 +0,0 @@ -# адреса кластера брокеров сообщений, задаются: -# если tcp в скобках и через запятую: (tcp://192.168.122.81:61616,tcp://192.168.122.82:61616) -# если amqp с failover и в скобках через запятую: failover:(amqp://192.168.122.81:5672,amqp://192.168.122.82:5672) -common.jms.url=(tcp://broker:61616) -# логин для аутентификации в брокере сообщений -common.jms.username=entaxy -# пароль для аутентификации в брокере сообщений -common.jms.password=entaxy -# максимальное количество соединений -# подробнее можно почитать здесь: https://github.com/messaginghub/pooled-jms/blob/master/pooled-jms-docs/Configuration.md -common.jms.maxConnections=20 -# максимальное количество сессий для каждого соединения -# подробнее можно почитать здесь: https://github.com/messaginghub/pooled-jms/blob/master/pooled-jms-docs/Configuration.md -common.jms.maxSessionsPerConnection=100 - -# наименование драйвера для инициализации фабрики планировщика quartz -org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.PostgreSQLDelegate - -# название очереди, через которую ходят большие пакеты и файлы -common.bridge.file.queue.name=file.queue \ No newline at end of file diff --git a/distribution/entaxy-docker/karaf/ru.entaxy.esb.system.bridge.cfg b/distribution/entaxy-docker/karaf/ru.entaxy.esb.system.bridge.cfg deleted file mode 100644 index eea4183..0000000 --- a/distribution/entaxy-docker/karaf/ru.entaxy.esb.system.bridge.cfg +++ /dev/null @@ -1,58 +0,0 @@ -# имя локальной шины() -jms.local=test1 -# значение true - мост текущего узла работает в пассивном режиме, -# т.е. сообщения для соответствующего удалённого узла складываются в очередь на локальном брокере, -# из которой уже читает подключаемый узел (локальный брокер должен быть доступен для соединения) -# По умолчанию false - активный режим, запись сообщения идёт сразу в очередь на удалённом брокере, -# подключаемого узла (брокеры по обе стороны моста должны быть доступны) -jms.local.master=false -# имена удаленных шин, задается через запятую(,) -jms.remote.list=test2 - -# адреса брокера, задаются чеерез запятую(jms.url.) -jms.url.test1=broker:61616 -# логин для подключения к брокеру(jms.username.) -jms.username.test1=entaxy -# пароль для подключения к брокеру(jms.password.) -jms.password.test1=entaxy -# протокол для передачи сообщений внутри шины(jms.protocol.inner.esb.) -# для корректной работы синхронного режима передачи сообщений: необходимо следить -# за одинаковым значением данного параметра в мосту и в самой шине(ru.entaxy.esb.cfg) -# возможные значения tcp, amqp -jms.protocol.inner.esb.test1=tcp -# протокол для передачи сообщений между шинами(jms.protocol.bridge.esb.) -# для корректной работы синхронного режима передачи сообщений: необходимо следить -# за одинаковым значением данного параметра во всех подключенных шинах -# возможные значения tcp, amqp -jms.protocol.bridge.test1=amqp - -# адреса брокера, задаются чеерез запятую(jms.url.) -jms.url.test2=broker:61616 -# логин для подключения к брокеру(jms.username.) -jms.username.test2=entaxy -# пароль для подключения к брокеру(jms.password.) -jms.password.test2=entaxy -# jms.master. - выставляем в true, когда соответствующий узел настроен в пассивный режим, -# т.е. для него jms.local.master = true (брокер должен быть доступен для соединения) -jms.master.test2=true -# протокол для передачи сообщений внутри шины(jms.protocol.inner.esb.) -# для корректной работы синхронного режима передачи сообщений: необходимо следить -# за одинаковым значением данного параметра в мосту и в самой шине(ru.entaxy.esb.cfg) -# возможные значения tcp, amqp -jms.protocol.inner.esb.test2=tcp -# протокол для передачи сообщений между шинами(jms.protocol.bridge.esb.) -# для корректной работы синхронного режима передачи сообщений: необходимо следить -# за одинаковым значением данного параметра во всех подключенных шинах -# возможные значения tcp, amqp -jms.protocol.bridge.test2=amqp - -# максимальное колчичество попыток отправить сообщение в очередь -# почитать подробнее можно в https://camel.apache.org/components/latest/eips/dead-letter-channel.html#deadLetterChannel-Redelivery -redelivery.maximumRedeliveries=-1 -# время между попытками отправить сообщение в очередь -redelivery.redeliveryDelay=5000 -# экспоненциальный рост времени между попытками отпрвки сообщений в очередь -redelivery.useExponentialBackOff=true - -queue.sender.concurrentConsumers=1 -queue.receiver.concurrentConsumers=1 \ No newline at end of file diff --git a/distribution/entaxy-docker/postgres/Dockerfile b/distribution/entaxy-docker/postgres/Dockerfile deleted file mode 100644 index 040f2d8..0000000 --- a/distribution/entaxy-docker/postgres/Dockerfile +++ /dev/null @@ -1,3 +0,0 @@ -FROM postgres - -COPY create-db.sql /docker-entrypoint-initdb.d/ diff --git a/distribution/entaxy-docker/postgres/create-db.sql b/distribution/entaxy-docker/postgres/create-db.sql deleted file mode 100644 index cb4890c..0000000 --- a/distribution/entaxy-docker/postgres/create-db.sql +++ /dev/null @@ -1,4 +0,0 @@ -CREATE DATABASE esb_entaxy; -GRANT ALL PRIVILEGES ON DATABASE esb_entaxy TO entaxy; -CREATE DATABASE db_connector_test; -GRANT ALL PRIVILEGES ON DATABASE db_connector_test TO entaxy; diff --git a/distribution/entaxy-docker/reposilite/Dockerfile b/distribution/entaxy-docker/reposilite/Dockerfile deleted file mode 100644 index 1fe5312..0000000 --- a/distribution/entaxy-docker/reposilite/Dockerfile +++ /dev/null @@ -1,3 +0,0 @@ -FROM dzikoysk/reposilite:2.9.23 - -COPY tokens.dat /app/data diff --git a/distribution/entaxy-docker/reposilite/tokens.dat b/distribution/entaxy-docker/reposilite/tokens.dat deleted file mode 100644 index 0ae3e57..0000000 --- a/distribution/entaxy-docker/reposilite/tokens.dat +++ /dev/null @@ -1,6 +0,0 @@ -!!org.panda_lang.reposilite.auth.TokenCollection -"tokens": -- "alias": "admin" - "path": "/" - "permissions": "m" - "token": "$2a$10$Xrurah6y4IOijq9EtFlAIe2wlhlUScggEBS88DriZDM9MCrAGwqdS" diff --git a/documentation/Entaxy.png b/documentation/Entaxy.png deleted file mode 100644 index bc9a433..0000000 Binary files a/documentation/Entaxy.png and /dev/null differ diff --git a/documentation/Management layer.postman_collection.json b/documentation/Management layer.postman_collection.json deleted file mode 100644 index 3dafc22..0000000 --- a/documentation/Management layer.postman_collection.json +++ /dev/null @@ -1,3606 +0,0 @@ -{ - "info": { - "_postman_id": "5f1e5b20-f1dd-46d2-a01c-36ed09cee573", - "name": "Management layer", - "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json" - }, - "item": [ - { - "name": "Руководство по управлению коннекторами и профилями в шине.", - "item": [ - { - "name": "Создание профиля системы", - "event": [ - { - "listen": "test", - "script": { - "id": "ddae46ff-75a9-443b-8d11-a04edba74dbc", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{system_id}}\n {{system_id}}\n \n default system\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Для создания профиля системы нужно вызвать метод createProfile, где вместо “system_uuid” нужно подставить uuid системы, вместо “system_name” - имя системы, “description” описание системы:\n" - }, - "response": [] - }, - { - "name": "Получить профиль системы", - "event": [ - { - "listen": "test", - "script": { - "id": "231fc234-06f3-4758-9b33-61a3f1426d58", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "var systemId = pm.environment.get(\"system1_id\");", - "", - "pm.test(\"Body matches \" + systemId, function () {", - " pm.expect(pm.response.text()).to.include(systemId);", - "});", - "", - "var connectorName = pm.globals.get(\"template_name\") + \"-\" + systemId;", - "", - "pm.test(\"Body matches \" + connectorName, function () {", - " pm.expect(pm.response.text()).to.include(connectorName);", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{system_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Проверить созданный профиль можно с помощью метода getProfile, где вместо “system_uuid” нужно подставить uuid системы\n" - }, - "response": [] - }, - { - "name": "Получить весь список профилей систем", - "event": [ - { - "listen": "test", - "script": { - "id": "86d87f3a-2067-4d17-becf-b52428bc67e7", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "var response = getSoapBody();", - "", - "var systemId = pm.environment.get(\"system1_id\");", - "var esbName = pm.environment.get(\"esb_name\");", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "if (response.hasOwnProperty('fullBridgeProfileType')) {", - " ", - " pm.test(\"Body matches \" + esbName, function () {", - " pm.expect(pm.response.text()).to.include(esbName);", - " });", - " ", - " pm.test(\"Body matches \" + systemId, function () {", - " pm.expect(pm.response.text()).to.include(systemId);", - " });", - "}" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Получить список профилей, зарегистрированных в шине, можно с помощью метода getProfiles" - }, - "response": [] - }, - { - "name": "Остановить работу профиля системы в шине ", - "event": [ - { - "listen": "test", - "script": { - "id": "e9016f40-0fb8-4d44-a58a-7ea98c883aa9", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{system_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Остановить профиль и все его зависимости можно с помощью метода stopProfile, где вместо “system_uuid” нужно подставить uuid системы\n" - }, - "response": [] - }, - { - "name": "Запустить работу профиля систем в шине", - "event": [ - { - "listen": "test", - "script": { - "id": "6fccc710-0a84-4843-a1bb-73c643e8c53d", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{system_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Запустить профиль и все его зависимости можно с помощью метода startProfile, где вместо “system_uuid” нужно подставить uuid системы\n" - }, - "response": [] - }, - { - "name": "Удалить профиль системы из шины", - "event": [ - { - "listen": "test", - "script": { - "id": "791636da-cb95-40d9-a709-17da9f769ff9", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{system_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Удалить профиль и все его зависимости можно с помощью метода removeProfile, где вместо “system_uuid” нужно подставить uuid системы(ВНИМАНИЕ! При удалении профиля также удаляются все связанные с ним коннекторы)" - }, - "response": [] - }, - { - "name": "Получить список шаблонов коннекторов", - "event": [ - { - "listen": "test", - "script": { - "id": "6c1b7bb5-e787-4bfc-9291-73648162dec9", - "exec": [ - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "var response = getSoapBody();", - "", - "pm.test(\"Has Messages\", function () {", - " pm.expect(response).to.have.property('listTemplate');", - "});", - "", - "if (response.hasOwnProperty('listTemplate')) {", - " var list_template = response['listTemplate'];", - "", - " pm.test(\"Body matches uniform-service-in-connector\", function () {", - " pm.expect(pm.response.text()).to.include(\"uniform-service-in-connector\");", - " });", - " ", - " // if (response.some(item => item.templateName === 'uniform-service-in-connector')) {", - " pm.globals.set(\"template_name\", \"uniform-service-in-connector\");", - " // }", - " ", - " pm.test(\"Body matches uniform-service-in-connector\", function () {", - " pm.expect(pm.response.text()).to.include(\"uniform-service-in-connector\");", - " });", - " ", - " pm.test(\"Body matches uniform-service-out-connector\", function () {", - " pm.expect(pm.response.text()).to.include(\"uniform-service-out-connector\");", - " });", - "}" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Для создания коннектора в шине нужно получить список шаблонов(требуются для создания коннекторов) методом getTemplates\n" - }, - "response": [] - }, - { - "name": "Получить информацию о шаблоне коннектора", - "event": [ - { - "listen": "test", - "script": { - "id": "781451d6-5194-40f5-9b34-d9de14fa9b8e", - "exec": [ - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "var response = getSoapBody();", - "", - "pm.test(\"Has Messages template\", function () {", - " pm.expect(response).to.have.property('template');", - "});", - "", - "" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{template_name}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Для создания коннектора в шине нужно получить список шаблонов(требуются для создания коннекторов) методом getTemplate, где “template_name” имя шаблона по которому будет сделан коннектор\n" - }, - "response": [] - }, - { - "name": "Создание коннектора", - "event": [ - { - "listen": "test", - "script": { - "id": "7d9c9a60-8a4b-4b3d-b905-f5d7e40f9bd0", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{template_name}}\n {{system_id}}\n \n \n \n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Для создания коннектора в шине нужно вызвать метод createConnector, где templateName - это имя шаблона, полученное из метода getTemplates, system_uuid - это uuid профиля, зарегистрированного в системе ранее, также нужно заполнить список параметров необходимый для создания коннектора(ВНИМАНИЕ! если не заполнить список параметров, то установятся значения по умолчанию)\n" - }, - "response": [] - }, - { - "name": "Получить список коннекторов", - "event": [ - { - "listen": "test", - "script": { - "id": "39a21540-e292-418d-9d28-69627de99100", - "exec": [ - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "var response = getSoapBody();", - "", - "pm.test(\"Has Messages\", function () {", - " pm.expect(response).to.have.property('listConnector');", - "});", - "", - "if (response.hasOwnProperty('listConnector')) {", - " var list_template = response['listConnector'];", - "", - " pm.test(\"Body matches uniform-service-in-connector\", function () {", - " pm.expect(pm.response.text()).to.include(\"uniform-service-in-connector\");", - " });", - "}" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Можно просматривать список подключенных коннекторов в шине методом getConnectors" - }, - "response": [] - }, - { - "name": "Запустить работу коннектора в шине", - "event": [ - { - "listen": "test", - "script": { - "id": "5d1fab2f-51ae-4726-a2ea-c836cf80c8b2", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{template_name}}\n {{system_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Запустить коннектор можно с помощью метода startConnector, где вместо “system_uuid” нужно подставить uuid системы, “template_name” это имя шаблона" - }, - "response": [] - }, - { - "name": "Остановить работу коннектора в шине", - "event": [ - { - "listen": "test", - "script": { - "id": "7dd28510-2b75-439d-9bf9-a277dd1ad5cf", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{template_name}}\n {{system_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Остановить коннектор можно с помощью метода stopConnector, где вместо “system_uuid” нужно подставить uuid системы, “template_name” это имя шаблона" - }, - "response": [] - }, - { - "name": "Удалить коннектор", - "event": [ - { - "listen": "test", - "script": { - "id": "859d5f55-4da4-45a3-9553-fa3b2743044c", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{template_name}}\n {{system_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Удалить коннектор можно с помощью метода removeConnector, где вместо “system_uuid” нужно подставить uuid системы, “template_name” это имя шаблона" - }, - "response": [] - }, - { - "name": "Получить список подключенных шин", - "event": [ - { - "listen": "prerequest", - "script": { - "id": "e676f268-7463-46a7-83f1-852c32cdb570", - "exec": [ - "" - ], - "type": "text/javascript" - } - }, - { - "listen": "test", - "script": { - "id": "b03708a1-b1f5-4185-b8d0-8c4e00fe0af9", - "exec": [ - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "var response = getSoapBody();", - "", - "pm.test(\"Has Messages listEsb\", function () {", - " pm.expect(response).to.have.property('listEsb');", - "});", - "", - "if (response.hasOwnProperty('listEsb')) {", - " var list_esb = response['listEsb'];", - " var esbName = list_esb[\"esbName\"];", - " ", - " if(Array.isArray(esbName)) {", - " esbName = esbName[0];", - " }", - " ", - " pm.test(\"Body matches \" + esbName, function () {", - " pm.globals.set(\"esb_name\", esbName);", - " });", - "}" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Для получения списка подключенных шин можно с помощью метода getListEsb" - }, - "response": [] - }, - { - "name": "Создание мостового профиля", - "event": [ - { - "listen": "test", - "script": { - "id": "29d4a58d-62c0-468b-9783-4f6e35ca147a", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{password}}", - "type": "string" - }, - { - "key": "username", - "value": "{{login}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{system_id}}\n {{system_id}}\n {{esb_name}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Создать профиль, ведущий на мост, можно с помощью метода createBridgeProfile, где “system_uuid” uuid системы, “esb_name” имя подключенной шины" - }, - "response": [] - }, - { - "name": "Остановить мостовой профиль", - "event": [ - { - "listen": "test", - "script": { - "id": "7943398a-5511-4a6e-858f-1c4afdb16cc5", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{password}}", - "type": "string" - }, - { - "key": "username", - "value": "{{login}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n {{system_id}}\n {{system_id}}\n {{esb_name}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Остановить профиль, ведущий на мост, можно с помощью метода stopBridgeProfile, где “system_uuid” uuid системы, “esb_name” имя подключенной шины\n" - }, - "response": [] - }, - { - "name": "Запустить мостовой профиль", - "event": [ - { - "listen": "test", - "script": { - "id": "a8544cbe-0d41-490f-8507-8841359d00fd", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{password}}", - "type": "string" - }, - { - "key": "username", - "value": "{{login}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n {{system_id}}\n {{system_id}}\n {{esb_name}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Запустить профиль, ведущий на мост, можно с помощью метода startBridgeProfile, где “system_uuid” uuid системы, “esb_name” имя подключенной шины\n\n" - }, - "response": [] - }, - { - "name": "Получить мостовой профиль", - "event": [ - { - "listen": "test", - "script": { - "id": "7dadab09-b3c9-477f-a503-d5307f8fa958", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{password}}", - "type": "string" - }, - { - "key": "username", - "value": "{{login}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n {{system_id}}\n {{system_id}}\n {{esb_name}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Получить профиль, ведущий на мост, можно с помощью метода getBridgeProfile, где “system_uuid” uuid системы, “esb_name” имя подключенной шины\n\n" - }, - "response": [] - }, - { - "name": "Получить список мостовых профилей", - "event": [ - { - "listen": "test", - "script": { - "id": "954c6f50-e564-476c-b0d3-186af84509e2", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{password}}", - "type": "string" - }, - { - "key": "username", - "value": "{{login}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Для получения списка профилей, ведущих на мост, можно использовать метод getBridgeProfiles:(ВНИМАНИЕ! запрос покажет список проброшенных профилей на ТЕКУЩЕЙ шине)\n" - }, - "response": [] - }, - { - "name": "Удалить мостовой профиль", - "event": [ - { - "listen": "test", - "script": { - "id": "bbb77d98-0c2c-4de7-95c7-ae2b79ec887d", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{password}}", - "type": "string" - }, - { - "key": "username", - "value": "{{login}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n {{system1_id}}\n {{system1_id}}\n {{esb_name}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Удалить профиль, ведущий на мост, можно с помощью метода removeBridgeProfile, где “system_uuid” uuid системы, “esb_name” имя подключенной шины\n\n\n" - }, - "response": [] - }, - { - "name": "Создать доступ", - "event": [ - { - "listen": "test", - "script": { - "id": "e8022e10-0979-4ae3-98e7-40930fa57727", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{password}}", - "type": "string" - }, - { - "key": "username", - "value": "{{login}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{system1_id}}\n {{system1_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Создать доступ одной системы к другой, можно с помощью метода createPermission, где “objectUuid” uuid системы, которой нужно дать доступ, “subjectUuid” - uuid системы, к которой нужно дать доступ" - }, - "response": [] - }, - { - "name": "Удалить доступ", - "event": [ - { - "listen": "test", - "script": { - "id": "ab8fdbbf-b4d4-4756-ae75-aba9c117c538", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{password}}", - "type": "string" - }, - { - "key": "username", - "value": "{{login}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n {{system_id}}\n {{system_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Удалить доступ одной системы к другой, можно с помощью метода removePermission, где “objectUuid” uuid системы, которой нужно дать доступ, “subjectUuid” - uuid системы, к которой нужно дать доступ" - }, - "response": [] - }, - { - "name": "Получить список систем, доступ к которым от данной системы разрешен", - "event": [ - { - "listen": "test", - "script": { - "id": "f05fc1db-913c-4a91-810a-dd777cefc048", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{password}}", - "type": "string" - }, - { - "key": "username", - "value": "{{login}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n {{system_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Получить список систем, доступ к которым от данной системы разрешен, можно с помощью метода getPermissionByObject, где “objectUuid” uuid системы\n" - }, - "response": [] - }, - { - "name": "Получить список систем, доступ которым разрешен к данной системе", - "event": [ - { - "listen": "test", - "script": { - "id": "454c7cde-48bb-49c7-aa11-5e63e298555e", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{password}}", - "type": "string" - }, - { - "key": "username", - "value": "{{login}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n {{system_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Получить список систем, доступ которым разрешен к данной системе, можно с помощью метода getPermissionBySubject, где “subjectUuid” uuid системы:\n" - }, - "response": [] - }, - { - "name": "Создать сразу несколько доступов, которым разрешено отправлять сообщения от данной системы", - "event": [ - { - "listen": "test", - "script": { - "id": "9f59cfd2-0abb-4aaa-8e42-273fcb9927c5", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{password}}", - "type": "string" - }, - { - "key": "username", - "value": "{{login}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{objectUuid}}\n \n {{subjectUuid1}}\n {{subjectUuid2}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Создать сразу несколько доступов, которым разрешено отправлять сообщения от данной системы, можно с помощью метода createPermissionForObjectRequest, где “objectUuid” это uuid системы, от которой буду исходить сообщения, ‘“subjectUuid1”, “subjectUuid2” и т д, это uuid систем, которым будут отправлять сообщения\n" - }, - "response": [] - }, - { - "name": "Создать сразу несколько доступов, которым разрешено отправлять сообщения в данную систему", - "event": [ - { - "listen": "test", - "script": { - "id": "cacd85e7-bced-4116-bccb-ec87620bd0a4", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{password}}", - "type": "string" - }, - { - "key": "username", - "value": "{{login}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{objectUuid}}\n \n {{subjectUuid1}}\n {{subjectUuid2}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Создать сразу несколько доступов, которым разрешено отправлять сообщения в данную систему, можно с помощью метода createPermissionForSubjectRequest, где “objectUuid1”, “objectUuid2” и т д - это uuid систем, от которых буду исходить сообщения, ‘“subjectUuid” - это uuid системы, которой будут отправлять сообщения\n" - }, - "response": [] - } - ], - "description": "Профиль(profile) - это описание внешней системы в шине.(Например s1).\n\nМостовой профиль(bridge-profile) - это профиль на другой стороне шины, ведущий через мост в профиль.\n(Например s1)\n\nКоннектор(connector) - это связь между интерфейсом, через который может работать система, и профилем.(Например uniform-service, nsi)\n\nДоступ(permission) - это разрешение на взаимодействие двух систем.(Например для того чтобы система s1 смогла отправить сообщение s2)(/permission-management)\n\nУчетная запись(account) - это учетная запись системы для взаимодействия с шиной.\n\nДля каждой системы должна быть учетная запись для возможности отправления сообщений в шину.\n\nТакже есть учетные записи для возможности взаимодействия с управленческим слоем(т. е. для того чтобы управлять коннекторами/профилями/учетными записями/топиками нужна учетная запись с соответствующими правами)(/basic-auth-management)\nКоннекторы делятся на входящие и исходящие(in, out), которые отвечают за отправку сообщения в определенный интерфейс и на получение ответа из определенного интерфейса соответственно.\nНапример, для того чтобы иметь возможность отправить сообщение в soap нужно создать коннектор uniform-service-in-connector, а для того чтобы получить сообщение из soap нужно создать коннектор soap-out-connector.\nПо адресу /system-management-service находится сам сервис управления коннекторами и профилями в шине.\nДля работы внешней системы в шине нужно сначала создать профиль данной системы в шине, потом добавлять к нему необходимые коннекторы и пробрасывать его в необходимые шины.\n", - "event": [ - { - "listen": "prerequest", - "script": { - "id": "94c3de71-9085-4751-8f4f-81aa7068b382", - "type": "text/javascript", - "exec": [ - "" - ] - } - }, - { - "listen": "test", - "script": { - "id": "6fc701b1-cfdf-464e-b80c-fe7cd100d358", - "type": "text/javascript", - "exec": [ - "" - ] - } - } - ], - "protocolProfileBehavior": {} - }, - { - "name": "Rest сервис Topic-management", - "item": [ - { - "name": "Создать топик", - "request": { - "method": "POST", - "header": [ - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "{\n \"topicName\": \"boomNews\",\n \"possibleSubscribers\" : [\"systemUuid1\", \"systemUuid2\"],\n \"possiblePublishers\" : [\"systemUuid3\", \"systemUuid4\"]\n}\n", - "options": { - "raw": { - "language": "json" - } - } - }, - "url": { - "raw": "{{host}}:9090/topic-management/create", - "host": [ - "{{host}}" - ], - "port": "9090", - "path": [ - "topic-management", - "create" - ] - }, - "description": "При создании и изменении топика, есть возможность передать списки систем, которым доступна подписка или публикация в данном топике.\n" - }, - "response": [] - }, - { - "name": "Обновить топик", - "request": { - "method": "POST", - "header": [ - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "{\n \"topicName\": \"boomNews\",\n \"possibleSubscribers\" : [\"systemUuid1\", \"systemUuid2\"],\n \"possiblePublishers\" : [\"systemUuid3\", \"systemUuid4\"]\n}" - }, - "url": { - "raw": "{{host}}:9090/topic-management/update", - "host": [ - "{{host}}" - ], - "port": "9090", - "path": [ - "topic-management", - "update" - ] - }, - "description": "изменить топик (название не меняется, так как на него завязана сама очередь в брокере)\n" - }, - "response": [] - }, - { - "name": "Удалить топик", - "request": { - "method": "POST", - "header": [ - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "{\n \"topicName\": \"boomNews\"\n}" - }, - "url": { - "raw": "{{host}}:9090/topic-management/delete", - "host": [ - "{{host}}" - ], - "port": "9090", - "path": [ - "topic-management", - "delete" - ] - }, - "description": "delete - топик помечается как удалённый\n\n" - }, - "response": [] - }, - { - "name": "Очистка хранилища топиков", - "request": { - "method": "POST", - "header": [ - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "" - }, - "url": { - "raw": "{{host}}:9090/topic-management/clean", - "host": [ - "{{host}}" - ], - "port": "9090", - "path": [ - "topic-management", - "clean" - ] - }, - "description": "Окончательное удаление топиков, помеченных как удалённые." - }, - "response": [] - }, - { - "name": "Подписаться на топик", - "request": { - "method": "POST", - "header": [ - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "{\n \"topicName\": \"boomNews\",\n \"subscriptionType\": \"PUSH\"\n}", - "options": { - "raw": { - "language": "json" - } - } - }, - "url": { - "raw": "{{host}}:9090/topic-subscription/subscribe", - "host": [ - "{{host}}" - ], - "port": "9090", - "path": [ - "topic-subscription", - "subscribe" - ] - } - }, - "response": [] - }, - { - "name": "Отписаться от топика", - "request": { - "method": "POST", - "header": [ - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "{\n \"topicName\": \"boomNews\"\n}", - "options": { - "raw": { - "language": "json" - } - } - }, - "url": { - "raw": "{{host}}:9090/topic-subscription/unsubscribe", - "host": [ - "{{host}}" - ], - "port": "9090", - "path": [ - "topic-subscription", - "unsubscribe" - ] - } - }, - "response": [] - }, - { - "name": "Массовая обработка при наличии права manage для данного сервиса", - "request": { - "method": "POST", - "header": [ - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "{\n \"topicName\": \"boomNews\",\n \"systemUuids\": [\n {\n \"systemUuid\": \"NNNNNNNN-NNNN-NNNN-NNNN-NNNNNNNNNNNN\",\n \"subscriptionType\": \"PUSH\"\n },\n {\n \"systemUuid\": \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n \"subscriptionType\": \"PULL\"\n },\n {\n \"systemUuid\": \"YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY\",\n \"subscriptionType\": \"PULL\"\n }\n ]\n}", - "options": { - "raw": { - "language": "json" - } - } - }, - "url": { - "raw": "{{host}}:9092/topic-subscription/subscribe", - "host": [ - "{{host}}" - ], - "port": "9092", - "path": [ - "topic-subscription", - "subscribe" - ] - } - }, - "response": [] - }, - { - "name": "Массовая обработка при наличии права manage для данного сервиса", - "request": { - "method": "POST", - "header": [ - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "{\n \"topicName\": \"boomNews\",\n \"systemUuids\": [\n {\n \"systemUuid\":\"NNNNNNNN-NNNN-NNNN-NNNN-NNNNNNNNNNNN\",\n \"subscriptionType\": \"PUSH\"\n },\n {\n \"systemUuid\": \"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\",\n \"subscriptionType\": \"PULL\"\n },\n {\n \"systemUuid\": \"YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY\",\n \"subscriptionType\": \"PULL\"\n }\n ]\n}", - "options": { - "raw": { - "language": "json" - } - } - }, - "url": { - "raw": "{{host}}:9092/topic-subscription/unsubscribe", - "host": [ - "{{host}}" - ], - "port": "9092", - "path": [ - "topic-subscription", - "unsubscribe" - ] - } - }, - "response": [] - }, - { - "name": "Опубликовать событие", - "request": { - "method": "POST", - "header": [ - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "{\n \"topicName\": \"boomNews\", \"message\": \"messageText2\"\n}", - "options": { - "raw": { - "language": "json" - } - } - }, - "url": { - "raw": "{{host}}:9090/topic-subscription/publish", - "host": [ - "{{host}}" - ], - "port": "9090", - "path": [ - "topic-subscription", - "publish" - ] - } - }, - "response": [] - } - ], - "description": "\nСервис состоит из 2-х контекстов:\n\n- _topic-management_ - управление топиками (создание/изменение/удаление)\n- _topic-subscription_ - клиентский сервис подписки и публикации сообщения\n\nПри смене контекста в конфигурационных файлах требуется перераздать права на данный сервис.\n", - "protocolProfileBehavior": {} - }, - { - "name": "Authentication", - "item": [ - { - "name": "Добавление аккаунтов", - "request": { - "method": "POST", - "header": [ - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n \n \n system1login\n system1pass\n \n system1uuid\n \n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/basic-auth-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "basic-auth-management" - ] - }, - "description": "Метод для добавления учетных записей (addAccount) разработан для добавления новых пользователей в систему.\n" - }, - "response": [] - }, - { - "name": "Обновление аккаунтов", - "request": { - "method": "POST", - "header": [ - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n \n \n system1login\n system1pass\n \n system1uuid\n \n \n system2login\n system2pass\n \n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/basic-auth-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "basic-auth-management" - ] - }, - "description": "Метод для обновления учетной записи (updateAccount)разработан для обновления следующей информации:\n" - }, - "response": [] - }, - { - "name": "Удаление аккаунтов", - "request": { - "method": "POST", - "header": [ - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n \n system1login\n system2login\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/basic-auth-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "basic-auth-management" - ] - }, - "description": "Метод для удаления аккаунта (removeAccount) служит для удаления аккаунта из системы.\n" - }, - "response": [] - }, - { - "name": "Выдача прав аккаунту", - "request": { - "method": "POST", - "header": [ - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n \n \n dog\n topic-management\n service\n \n \n \n \n dog\n system-management\n service\n \n \n \n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/basic-auth-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "basic-auth-management" - ] - }, - "description": "Метод выдачи прав аккаунту (addAccountPermission) служит для создания permission связанных с переданным аккаунтом.\n" - }, - "response": [] - }, - { - "name": " Удаление прав аккаунта", - "request": { - "method": "POST", - "header": [ - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n \n \n dog\n topic-management\n service\n \n \n \n \n dog\n system-management\n service\n \n \n \n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/basic-auth-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "basic-auth-management" - ] - }, - "description": "Метод удаления прав аккаунта (removeAccountPermission) служит для удаления permission связанных с переданным аккаунтом.\n" - }, - "response": [] - } - ], - "description": "Метод для добавления учетных записей (addAccount) разработан для добавления новых пользователей в систему.\n", - "event": [ - { - "listen": "prerequest", - "script": { - "id": "90b3a65b-d7c1-41ec-b5b3-9008ac46660b", - "type": "text/javascript", - "exec": [ - "" - ] - } - }, - { - "listen": "test", - "script": { - "id": "9832eddc-fe66-4f0d-a736-86ef1f84aafc", - "type": "text/javascript", - "exec": [ - "" - ] - } - } - ], - "protocolProfileBehavior": {} - }, - { - "name": "Сервис загрузки ресурсов", - "item": [ - { - "name": "Загрузка ресурса", - "event": [ - { - "listen": "test", - "script": { - "id": "4ef80c70-993e-45eb-86dd-c203491acabf", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "type": "text", - "value": "{{adminLogin}}" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n lama\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/schema", - "host": [ - "{{base_url}}" - ], - "path": [ - "schema" - ] - }, - "description": "Для загрузки ресурса в шину нужно использовать метод loadResource.\n- resourceValue - сам ресурс, в формате base64\n\n\n" - }, - "response": [] - }, - { - "name": "Получить ресурс", - "event": [ - { - "listen": "test", - "script": { - "id": "4f63face-528b-4d07-a0fe-ebea026cf416", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "type": "text", - "value": "{{adminLogin}}" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n 1\n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/schema", - "host": [ - "{{base_url}}" - ], - "path": [ - "schema" - ] - }, - "description": "Для выгрузки заранее загруженного ресурса в шину нужно использовать метод getResource.\n\n\n\n" - }, - "response": [] - }, - { - "name": "Перезагрузить ресурс", - "event": [ - { - "listen": "test", - "script": { - "id": "3eb62411-f82e-427f-899b-a5a4dbd699bb", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "type": "text", - "value": "{{adminLogin}}" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n 1\n \n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/schema", - "host": [ - "{{base_url}}" - ], - "path": [ - "schema" - ] - }, - "description": "Для перезагрузки ресурса в шину есть метод reloadResource.\n\n\n\n" - }, - "response": [] - }, - { - "name": "Удалить ресурс", - "event": [ - { - "listen": "test", - "script": { - "id": "9b839a39-a338-4005-80a9-68fb861d8cb2", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "type": "text", - "value": "{{adminLogin}}" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n 1\n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/schema", - "host": [ - "{{base_url}}" - ], - "path": [ - "schema" - ] - }, - "description": "Для удаления ресурса в шине есть метод removeResource.\n\n\n\n" - }, - "response": [] - }, - { - "name": "Загрузить информацию о ресурсе", - "event": [ - { - "listen": "test", - "script": { - "id": "15ac2ab2-7170-45ec-9eee-0966aa9d834b", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "type": "text", - "value": "{{adminLogin}}" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n lama.xsd\n 1\n 1.0\n lama test\n false\n http:lama.xsd\n l\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/schema", - "host": [ - "{{base_url}}" - ], - "path": [ - "schema" - ] - }, - "description": "Для загрузки мета информации ресурса в шине есть метод loadResourceInfo.\n\n\n\n" - }, - "response": [] - }, - { - "name": "Получить информацию о ресурсе", - "event": [ - { - "listen": "test", - "script": { - "id": "1987b97e-2f15-4cd7-842e-680acb4a8edd", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "type": "text", - "value": "{{adminLogin}}" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n 1\n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/schema", - "host": [ - "{{base_url}}" - ], - "path": [ - "schema" - ] - }, - "description": "Для получения мета информации ресурса в шине есть метод getResourceInfo.\n\n\n\n" - }, - "response": [] - }, - { - "name": "Изменить информацию о ресурсе", - "event": [ - { - "listen": "test", - "script": { - "id": "6eb7d443-c65e-4dc0-9f26-417998710ec5", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "type": "text", - "value": "{{adminLogin}}" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n 1\n lama.xsd\n 1\n 1.0\n lama test\n false\n http:lama.xsd\n l\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/schema", - "host": [ - "{{base_url}}" - ], - "path": [ - "schema" - ] - }, - "description": "Для корректирования мета информации ресурса в шине есть метод editResourceInfo.\n\n\n\n\n" - }, - "response": [] - }, - { - "name": "Удалить информацию о ресурсе", - "event": [ - { - "listen": "test", - "script": { - "id": "2c30f524-db2e-4a4b-b384-bedfbc3b6841", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "type": "text", - "value": "{{adminLogin}}" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n 1\n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/schema", - "host": [ - "{{base_url}}" - ], - "path": [ - "schema" - ] - }, - "description": "Для удаления мета информации ресурса в шине есть метод removeResourceInfo.\n\n\n\n\n\n" - }, - "response": [] - }, - { - "name": "Получить список информации о ресурсах", - "event": [ - { - "listen": "test", - "script": { - "id": "cd6ea560-2b66-4e75-8fa2-479c1ee660ae", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "type": "text", - "value": "{{adminLogin}}" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/schema", - "host": [ - "{{base_url}}" - ], - "path": [ - "schema" - ] - }, - "description": "Для получения списка мета информации ресурсов в шине есть метод getResourceInfoList.\n\n\n\n\n\n" - }, - "response": [] - }, - { - "name": "Получить список информации о ресурсах по имени ресурса", - "event": [ - { - "listen": "test", - "script": { - "id": "b4a24cf7-bfe8-4456-9cfb-395de3961f90", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "type": "text", - "value": "{{adminLogin}}" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n .xsd\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/schema", - "host": [ - "{{base_url}}" - ], - "path": [ - "schema" - ] - }, - "description": "Для получения списка мета информации ресурсов по имени ресурса в шине есть метод getResourceInfoListByName.\n\n\n\n\n\n" - }, - "response": [] - }, - { - "name": "Получить список информации о ресурсах по namespace ресурса", - "event": [ - { - "listen": "test", - "script": { - "id": "15458871-e3b5-4f5c-a16f-917b3a57ea2e", - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "type": "text", - "value": "{{adminLogin}}" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n lama\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/schema", - "host": [ - "{{base_url}}" - ], - "path": [ - "schema" - ] - }, - "description": "Для получения списка мета информации ресурсов по namespace ресурса в шине есть метод getResourceInfoListByNamespace.\n\n\n\n\n\n" - }, - "response": [] - } - ], - "protocolProfileBehavior": {} - }, - { - "name": "Работа с файлами", - "item": [ - { - "name": "Загрузка мета информации о файле", - "event": [ - { - "listen": "test", - "script": { - "id": "0348e084-47aa-4b4b-8839-79241f336ca2", - "exec": [ - "function getSoapBody() {", - " var soapBody = responseBody.match(//g);", - " var jsonObject = xml2Json(soapBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{messageUUID}}\n 1\n 228377149\n 1\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/bigPackets", - "host": [ - "{{base_url}}" - ], - "path": [ - "bigPackets" - ] - }, - "description": "Для начала загрузки необходимо прислать в шину служебную информацию о файле(количество кусков, id, checksum)" - }, - "response": [] - }, - { - "name": "Загрузка части файла", - "event": [ - { - "listen": "test", - "script": { - "id": "d283f30d-eaa7-4fa4-897c-33380f724e12", - "exec": [ - "function getSoapBody() {", - " var soapBody = responseBody.match(//g);", - " var jsonObject = xml2Json(soapBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{messageUUID}}\n 1\n bGFtYQ==\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/bigPackets", - "host": [ - "{{base_url}}" - ], - "path": [ - "bigPackets" - ] - } - }, - "response": [] - }, - { - "name": "Подтверждение загрузки файла", - "event": [ - { - "listen": "test", - "script": { - "id": "ff868b95-e667-4c29-b7d0-c0cac5b51432", - "exec": [ - "function getSoapBody() {", - " var soapBody = responseBody.match(//g);", - " var jsonObject = xml2Json(soapBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});" - ], - "type": "text/javascript" - } - } - ], - "protocolProfileBehavior": { - "disabledSystemHeaders": { - "content-type": true - } - }, - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "type": "text", - "value": "application/soap+xml;charset=UTF-8;action=\"http://www.entaxy/connector/bigPackets/esb/1.0#Integration:ConfirmTransfer\"" - }, - { - "key": "", - "type": "text", - "value": "", - "disabled": true - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n {{messageUUID}}\n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/bigPackets", - "host": [ - "{{base_url}}" - ], - "path": [ - "bigPackets" - ] - }, - "description": "При загрузки в шину всех кусков файла необходимо послать запрос об окончании загрузки, для проверки целостности файла." - }, - "response": [] - }, - { - "name": "Запрос на скачивание файла", - "event": [ - { - "listen": "test", - "script": { - "id": "c2006b22-00c3-4cef-a432-3eaf66023850", - "exec": [ - "function getSoapBody() {", - " var soapBody = responseBody.match(//g);", - " var jsonObject = xml2Json(soapBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});" - ], - "type": "text/javascript" - } - } - ], - "protocolProfileBehavior": { - "disabledSystemHeaders": { - "content-type": true - } - }, - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "type": "text", - "value": "Content-Type: application/soap+xml;charset=UTF-8;action=\"http://www.entaxy/connector/bigPackets/esb/1.0#Integration:DownloadRequest\"" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n {{messageUUID}}\n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/bigPackets", - "host": [ - "{{base_url}}" - ], - "path": [ - "bigPackets" - ] - } - }, - "response": [] - }, - { - "name": "Получение куска файла", - "event": [ - { - "listen": "test", - "script": { - "id": "76950610-16ae-4088-a559-36bf8b0d4f33", - "exec": [ - "function getSoapBody() {", - " var soapBody = responseBody.match(//g);", - " var jsonObject = xml2Json(soapBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{messageUUID}}\n 1\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/bigPackets", - "host": [ - "{{base_url}}" - ], - "path": [ - "bigPackets" - ] - } - }, - "response": [] - }, - { - "name": "Подтверждение получения файла", - "event": [ - { - "listen": "test", - "script": { - "id": "de8415be-fb49-455f-85e5-6a04e784d710", - "exec": [ - "function getSoapBody() {", - " var soapBody = responseBody.match(//g);", - " var jsonObject = xml2Json(soapBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});" - ], - "type": "text/javascript" - } - } - ], - "protocolProfileBehavior": { - "disabledSystemHeaders": { - "content-type": true - } - }, - "request": { - "method": "POST", - "header": [ - { - "key": "Content-Type", - "value": "Content-Type: application/soap+xml;charset=UTF-8;action=\"http://www.entaxy/connector/bigPackets/esb/1.0#Integration:ConfirmDownload\"", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n {{messageUUID}}\n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/bigPackets", - "host": [ - "{{base_url}}" - ], - "path": [ - "bigPackets" - ] - }, - "description": "Необходим для удаления из шины уже выкачанного файла." - }, - "response": [] - } - ], - "protocolProfileBehavior": {} - } - ], - "event": [ - { - "listen": "prerequest", - "script": { - "id": "8dad468e-a846-4dcb-af3b-22959aa33b7d", - "type": "text/javascript", - "exec": [ - "" - ] - } - }, - { - "listen": "test", - "script": { - "id": "75322b50-d081-49b3-b833-1d02a88c2136", - "type": "text/javascript", - "exec": [ - "" - ] - } - } - ], - "variable": [ - { - "id": "74a38652-a338-49e7-941d-40f6a4c91e24", - "key": "X-ForwardedUser", - "value": "" - } - ], - "protocolProfileBehavior": {} -} \ No newline at end of file diff --git a/documentation/_styles/entaxy.css b/documentation/_styles/entaxy.css deleted file mode 100644 index 83d2e5c..0000000 --- a/documentation/_styles/entaxy.css +++ /dev/null @@ -1,429 +0,0 @@ -/* Entaxy documentation stylesheet */ -article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section{display:block} -audio,video{display:inline-block} -audio:not([controls]){display:none;height:0} -html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%} -a{background:none} -a:focus{outline:thin dotted} -a:active,a:hover{outline:0} -h1{font-size:2em;margin:.67em 0} -abbr[title]{border-bottom:1px dotted} -b,strong{font-weight:bold} -dfn{font-style:italic} -hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0} -mark{background:#ff0;color:#000} -code,kbd,pre,samp{font-family:monospace;font-size:1em} -pre{white-space:pre-wrap} -q{quotes:"\201C" "\201D" "\2018" "\2019"} -small{font-size:80%} -sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline} -sup{top:-.5em} -sub{bottom:-.25em} -img{border:0} -svg:not(:root){overflow:hidden} -figure{margin:0} -fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em} -legend{border:0;padding:0} -button,input,select,textarea{font-family:inherit;font-size:100%;margin:0} -button,input{line-height:normal} -button,select{text-transform:none} -button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer} -button[disabled],html input[disabled]{cursor:default} -input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0} -button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0} -textarea{overflow:auto;vertical-align:top} -table{border-collapse:collapse;border-spacing:0} -*,*::before,*::after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box} -html,body{font-size:100%} -body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;tab-size:4;word-wrap:anywhere;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased} -a:hover{cursor:pointer} -img,object,embed{max-width:100%;height:auto} -object,embed{height:100%} -img{-ms-interpolation-mode:bicubic} -.left{float:left!important} -.right{float:right!important} -.text-left{text-align:left!important} -.text-right{text-align:right!important} -.text-center{text-align:center!important} -.text-justify{text-align:justify!important} -.hide{display:none} -img,object,svg{display:inline-block;vertical-align:middle} -textarea{height:auto;min-height:50px} -select{width:100%} -.subheader,.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em} -div,dl,dt,dd,ul,ol,li,h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0} -a{color:#2156a5;text-decoration:underline;line-height:inherit} -a:hover,a:focus{color:#1d4b8f} -a img{border:0} -p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility} -p aside{font-size:.875em;line-height:1.35;font-style:italic} -h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{font-family:"Open Sans","DejaVu Sans",sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em} -h1 small,h2 small,h3 small,#toctitle small,.sidebarblock>.content>.title small,h4 small,h5 small,h6 small{font-size:60%;color:#e99b8f;line-height:0} -h1{font-size:2.125em} -h2{font-size:1.6875em} -h3,#toctitle,.sidebarblock>.content>.title{font-size:1.375em} -h4,h5{font-size:1.125em} -h6{font-size:1em} -hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0} -em,i{font-style:italic;line-height:inherit} -strong,b{font-weight:bold;line-height:inherit} -small{font-size:60%;line-height:inherit} -code{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;font-weight:400;color:rgba(0,0,0,.9)} -ul,ol,dl{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit} -ul,ol{margin-left:1.5em} -ul li ul,ul li ol{margin-left:1.25em;margin-bottom:0;font-size:1em} -ul.square li ul,ul.circle li ul,ul.disc li ul{list-style:inherit} -ul.square{list-style-type:square} -ul.circle{list-style-type:circle} -ul.disc{list-style-type:disc} -ol li ul,ol li ol{margin-left:1.25em;margin-bottom:0} -dl dt{margin-bottom:.3125em;font-weight:bold} -dl dd{margin-bottom:1.25em} -abbr,acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help} -abbr{text-transform:none} -blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd} -blockquote,blockquote p{line-height:1.6;color:rgba(0,0,0,.85)} -@media screen and (min-width:768px){h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2} -h1{font-size:2.75em} -h2{font-size:2.3125em} -h3,#toctitle,.sidebarblock>.content>.title{font-size:1.6875em} -h4{font-size:1.4375em}} -table{background:#fff;margin-bottom:1.25em;border:solid 1px #dedede;word-wrap:normal} -table thead,table tfoot{background:#f7f8f7} -table thead tr th,table thead tr td,table tfoot tr th,table tfoot tr td{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left} -table tr th,table tr td{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)} -table tr.even,table tr.alt{background:#f8f8f7} -table thead tr th,table tfoot tr th,table tbody tr td,table tr td,table tfoot tr td{line-height:1.6} -h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2;word-spacing:-.05em} -h1 strong,h2 strong,h3 strong,#toctitle strong,.sidebarblock>.content>.title strong,h4 strong,h5 strong,h6 strong{font-weight:400} -.center{margin-left:auto;margin-right:auto} -.stretch{width:100%} -.clearfix::before,.clearfix::after,.float-group::before,.float-group::after{content:" ";display:table} -.clearfix::after,.float-group::after{clear:both} -:not(pre).nobreak{word-wrap:normal} -:not(pre).nowrap{white-space:nowrap} -:not(pre).pre-wrap{white-space:pre-wrap} -:not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;-webkit-border-radius:4px;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed} -pre{color:rgba(0,0,0,.9);font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;line-height:1.45;text-rendering:optimizeSpeed} -pre code,pre pre{color:inherit;font-size:inherit;line-height:inherit} -pre>code{display:block} -pre.nowrap,pre.nowrap pre{white-space:pre;word-wrap:normal} -em em{font-style:normal} -strong strong{font-weight:400} -.keyseq{color:rgba(51,51,51,.8)} -kbd{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,.2),0 0 0 .1em white inset;box-shadow:0 1px 0 rgba(0,0,0,.2),0 0 0 .1em #fff inset;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap} -.keyseq kbd:first-child{margin-left:0} -.keyseq kbd:last-child{margin-right:0} -.menuseq,.menuref{color:#000} -.menuseq b:not(.caret),.menuref{font-weight:inherit} -.menuseq{word-spacing:-.02em} -.menuseq b.caret{font-size:1.25em;line-height:.8} -.menuseq i.caret{font-weight:bold;text-align:center;width:.45em} -b.button::before,b.button::after{position:relative;top:-1px;font-weight:400} -b.button::before{content:"[";padding:0 3px 0 2px} -b.button::after{content:"]";padding:0 2px 0 3px} -p a>code:hover{color:rgba(0,0,0,.9)} -#header,#content,#footnotes,#footer{width:100%;margin-left:auto;margin-right:auto;margin-top:0;margin-bottom:0;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em} -#header::before,#header::after,#content::before,#content::after,#footnotes::before,#footnotes::after,#footer::before,#footer::after{content:" ";display:table} -#header::after,#content::after,#footnotes::after,#footer::after{clear:both} -#content{margin-top:1.25em} -#content::before{content:none} -#header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0} -#header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf} -#header>h1:only-child,body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px} -#header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-flow:row wrap;-webkit-flex-flow:row wrap;flex-flow:row wrap} -#header .details span:first-child{margin-left:-.125em} -#header .details span.email a{color:rgba(0,0,0,.85)} -#header .details br{display:none} -#header .details br+span::before{content:"\00a0\2013\00a0"} -#header .details br+span.author::before{content:"\00a0\22c5\00a0";color:rgba(0,0,0,.85)} -#header .details br+span#revremark::before{content:"\00a0|\00a0"} -#header #revnumber{text-transform:capitalize} -#header #revnumber::after{content:"\00a0"} -#content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem} -#toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em} -#toc>ul{margin-left:.125em} -#toc ul.sectlevel0>li>a{font-style:italic} -#toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0} -#toc ul{font-family:"Open Sans","DejaVu Sans",sans-serif;list-style-type:none} -#toc li{line-height:1.3334;margin-top:.3334em} -#toc a{text-decoration:none} -#toc a:active{text-decoration:underline} -#toctitle{color:#7a2518;font-size:1.2em} -@media screen and (min-width:768px){#toctitle{font-size:1.375em} -body.toc2{padding-left:15em;padding-right:0} -#toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto} -#toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em} -#toc.toc2>ul{font-size:.9em;margin-bottom:0} -#toc.toc2 ul ul{margin-left:0;padding-left:1em} -#toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em} -body.toc2.toc-right{padding-left:0;padding-right:15em} -body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}} -@media screen and (min-width:1280px){body.toc2{padding-left:20em;padding-right:0} -#toc.toc2{width:20em} -#toc.toc2 #toctitle{font-size:1.375em} -#toc.toc2>ul{font-size:.95em} -#toc.toc2 ul ul{padding-left:1.25em} -body.toc2.toc-right{padding-left:0;padding-right:20em}} -#content #toc{border-style:solid;border-width:1px;border-color:#e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;-webkit-border-radius:4px;border-radius:4px} -#content #toc>:first-child{margin-top:0} -#content #toc>:last-child{margin-bottom:0} -#footer{max-width:none;background:rgba(0,0,0,.8);padding:1.25em} -#footer-text{color:rgba(255,255,255,.8);line-height:1.44} -#content{margin-bottom:.625em} -.sect1{padding-bottom:.625em} -@media screen and (min-width:768px){#content{margin-bottom:1.25em} -.sect1{padding-bottom:1.25em}} -.sect1:last-child{padding-bottom:0} -.sect1+.sect1{border-top:1px solid #e7e7e9} -#content h1>a.anchor,h2>a.anchor,h3>a.anchor,#toctitle>a.anchor,.sidebarblock>.content>.title>a.anchor,h4>a.anchor,h5>a.anchor,h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400} -#content h1>a.anchor::before,h2>a.anchor::before,h3>a.anchor::before,#toctitle>a.anchor::before,.sidebarblock>.content>.title>a.anchor::before,h4>a.anchor::before,h5>a.anchor::before,h6>a.anchor::before{content:"\00A7";font-size:.85em;display:block;padding-top:.1em} -#content h1:hover>a.anchor,#content h1>a.anchor:hover,h2:hover>a.anchor,h2>a.anchor:hover,h3:hover>a.anchor,#toctitle:hover>a.anchor,.sidebarblock>.content>.title:hover>a.anchor,h3>a.anchor:hover,#toctitle>a.anchor:hover,.sidebarblock>.content>.title>a.anchor:hover,h4:hover>a.anchor,h4>a.anchor:hover,h5:hover>a.anchor,h5>a.anchor:hover,h6:hover>a.anchor,h6>a.anchor:hover{visibility:visible} -#content h1>a.link,h2>a.link,h3>a.link,#toctitle>a.link,.sidebarblock>.content>.title>a.link,h4>a.link,h5>a.link,h6>a.link{color:#ba3925;text-decoration:none} -#content h1>a.link:hover,h2>a.link:hover,h3>a.link:hover,#toctitle>a.link:hover,.sidebarblock>.content>.title>a.link:hover,h4>a.link:hover,h5>a.link:hover,h6>a.link:hover{color:#a53221} -details,.audioblock,.imageblock,.literalblock,.listingblock,.stemblock,.videoblock{margin-bottom:1.25em} -details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em} -.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic} -table.tableblock.fit-content>caption.title{white-space:nowrap;width:0} -.paragraph.lead>p,#preamble>.sectionbody>[class="paragraph"]:first-of-type p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)} -table.tableblock #preamble>.sectionbody>[class="paragraph"]:first-of-type p{font-size:inherit} -.admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%} -.admonitionblock>table td.icon{text-align:center;width:80px} -.admonitionblock>table td.icon img{max-width:none} -.admonitionblock>table td.icon .title{font-weight:bold;font-family:"Open Sans","DejaVu Sans",sans-serif;text-transform:uppercase} -.admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6);word-wrap:anywhere} -.admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0} -.exampleblock>.content{border-style:solid;border-width:1px;border-color:#e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;-webkit-border-radius:4px;border-radius:4px} -.exampleblock>.content>:first-child{margin-top:0} -.exampleblock>.content>:last-child{margin-bottom:0} -.sidebarblock{border-style:solid;border-width:1px;border-color:#dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;-webkit-border-radius:4px;border-radius:4px} -.sidebarblock>:first-child{margin-top:0} -.sidebarblock>:last-child{margin-bottom:0} -.sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center} -.exampleblock>.content>:last-child>:last-child,.exampleblock>.content .olist>ol>li:last-child>:last-child,.exampleblock>.content .ulist>ul>li:last-child>:last-child,.exampleblock>.content .qlist>ol>li:last-child>:last-child,.sidebarblock>.content>:last-child>:last-child,.sidebarblock>.content .olist>ol>li:last-child>:last-child,.sidebarblock>.content .ulist>ul>li:last-child>:last-child,.sidebarblock>.content .qlist>ol>li:last-child>:last-child{margin-bottom:0} -.literalblock pre,.listingblock>.content>pre{-webkit-border-radius:4px;border-radius:4px;overflow-x:auto;padding:1em;font-size:.8125em} -@media screen and (min-width:768px){.literalblock pre,.listingblock>.content>pre{font-size:.90625em}} -@media screen and (min-width:1280px){.literalblock pre,.listingblock>.content>pre{font-size:1em}} -.literalblock pre,.listingblock>.content>pre:not(.highlight),.listingblock>.content>pre[class="highlight"],.listingblock>.content>pre[class^="highlight "]{background:#f7f7f8} -.literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)} -.listingblock>.content{position:relative} -.listingblock code[data-lang]::before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5} -.listingblock:hover code[data-lang]::before{display:block} -.listingblock.terminal pre .command::before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5} -.listingblock.terminal pre .command:not([data-prompt])::before{content:"$"} -.listingblock pre.highlightjs{padding:0} -.listingblock pre.highlightjs>code{padding:1em;-webkit-border-radius:4px;border-radius:4px} -.listingblock pre.prettyprint{border-width:0} -.prettyprint{background:#f7f7f8} -pre.prettyprint .linenums{line-height:1.45;margin-left:2em} -pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0} -pre.prettyprint li code[data-lang]::before{opacity:1} -pre.prettyprint li:not(:first-child) code[data-lang]::before{display:none} -table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none} -table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal} -table.linenotable td.code{padding-left:.75em} -table.linenotable td.linenos{border-right:1px solid currentColor;opacity:.35;padding-right:.5em} -pre.pygments .lineno{border-right:1px solid currentColor;opacity:.35;display:inline-block;margin-right:.75em} -pre.pygments .lineno::before{content:"";margin-right:-.125em} -.quoteblock{margin:0 1em 1.25em 1.5em;display:table} -.quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em} -.quoteblock blockquote,.quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify} -.quoteblock blockquote{margin:0;padding:0;border:0} -.quoteblock blockquote::before{content:"\201c";float:left;font-size:2.75em;font-weight:bold;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)} -.quoteblock blockquote>.paragraph:last-child p{margin-bottom:0} -.quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right} -.verseblock{margin:0 1em 1.25em} -.verseblock pre{font-family:"Open Sans","DejaVu Sans",sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility} -.verseblock pre strong{font-weight:400} -.verseblock .attribution{margin-top:1.25rem;margin-left:.5ex} -.quoteblock .attribution,.verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic} -.quoteblock .attribution br,.verseblock .attribution br{display:none} -.quoteblock .attribution cite,.verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)} -.quoteblock.abstract blockquote::before,.quoteblock.excerpt blockquote::before,.quoteblock .quoteblock blockquote::before{display:none} -.quoteblock.abstract blockquote,.quoteblock.abstract p,.quoteblock.excerpt blockquote,.quoteblock.excerpt p,.quoteblock .quoteblock blockquote,.quoteblock .quoteblock p{line-height:1.6;word-spacing:0} -.quoteblock.abstract{margin:0 1em 1.25em;display:block} -.quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center} -.quoteblock.excerpt>blockquote,.quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf} -.quoteblock.excerpt,.quoteblock .quoteblock{margin-left:0} -.quoteblock.excerpt blockquote,.quoteblock.excerpt p,.quoteblock .quoteblock blockquote,.quoteblock .quoteblock p{color:inherit;font-size:1.0625rem} -.quoteblock.excerpt .attribution,.quoteblock .quoteblock .attribution{color:inherit;font-size:.85rem;text-align:left;margin-right:0} -p.tableblock:last-child{margin-bottom:0} -td.tableblock>.content{margin-bottom:1.25em;word-wrap:anywhere} -td.tableblock>.content>:last-child{margin-bottom:-1.25em} -table.tableblock,th.tableblock,td.tableblock{border:0 solid #dedede} -table.grid-all>*>tr>*{border-width:1px} -table.grid-cols>*>tr>*{border-width:0 1px} -table.grid-rows>*>tr>*{border-width:1px 0} -table.frame-all{border-width:1px} -table.frame-ends{border-width:1px 0} -table.frame-sides{border-width:0 1px} -table.frame-none>colgroup+*>:first-child>*,table.frame-sides>colgroup+*>:first-child>*{border-top-width:0} -table.frame-none>:last-child>:last-child>*,table.frame-sides>:last-child>:last-child>*{border-bottom-width:0} -table.frame-none>*>tr>:first-child,table.frame-ends>*>tr>:first-child{border-left-width:0} -table.frame-none>*>tr>:last-child,table.frame-ends>*>tr>:last-child{border-right-width:0} -table.stripes-all tr,table.stripes-odd tr:nth-of-type(odd),table.stripes-even tr:nth-of-type(even),table.stripes-hover tr:hover{background:#f8f8f7} -th.halign-left,td.halign-left{text-align:left} -th.halign-right,td.halign-right{text-align:right} -th.halign-center,td.halign-center{text-align:center} -th.valign-top,td.valign-top{vertical-align:top} -th.valign-bottom,td.valign-bottom{vertical-align:bottom} -th.valign-middle,td.valign-middle{vertical-align:middle} -table thead th,table tfoot th{font-weight:bold} -tbody tr th{background:#f7f8f7} -tbody tr th,tbody tr th p,tfoot tr th,tfoot tr th p{color:rgba(0,0,0,.8);font-weight:bold} -p.tableblock>code:only-child{background:none;padding:0} -p.tableblock{font-size:1em} -ol{margin-left:1.75em} -ul li ol{margin-left:1.5em} -dl dd{margin-left:1.125em} -dl dd:last-child,dl dd:last-child>:last-child{margin-bottom:0} -ol>li p,ul>li p,ul dd,ol dd,.olist .olist,.ulist .ulist,.ulist .olist,.olist .ulist{margin-bottom:.625em} -ul.checklist,ul.none,ol.none,ul.no-bullet,ol.no-bullet,ol.unnumbered,ul.unstyled,ol.unstyled{list-style-type:none} -ul.no-bullet,ol.no-bullet,ol.unnumbered{margin-left:.625em} -ul.unstyled,ol.unstyled{margin-left:0} -ul.checklist{margin-left:.625em} -ul.checklist li>p:first-child>.fa-square-o:first-child,ul.checklist li>p:first-child>.fa-check-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em} -ul.checklist li>p:first-child>input[type="checkbox"]:first-child{margin-right:.25em} -ul.inline{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-flow:row wrap;-webkit-flex-flow:row wrap;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em} -ul.inline>li{margin-left:1.25em} -.unstyled dl dt{font-weight:400;font-style:normal} -ol.arabic{list-style-type:decimal} -ol.decimal{list-style-type:decimal-leading-zero} -ol.loweralpha{list-style-type:lower-alpha} -ol.upperalpha{list-style-type:upper-alpha} -ol.lowerroman{list-style-type:lower-roman} -ol.upperroman{list-style-type:upper-roman} -ol.lowergreek{list-style-type:lower-greek} -.hdlist>table,.colist>table{border:0;background:none} -.hdlist>table>tbody>tr,.colist>table>tbody>tr{background:none} -td.hdlist1,td.hdlist2{vertical-align:top;padding:0 .625em} -td.hdlist1{font-weight:bold;padding-bottom:1.25em} -td.hdlist2{word-wrap:anywhere} -.literalblock+.colist,.listingblock+.colist{margin-top:-.5em} -.colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top} -.colist td:not([class]):first-child img{max-width:none} -.colist td:not([class]):last-child{padding:.25em 0} -.thumb,.th{line-height:0;display:inline-block;border:solid 4px #fff;-webkit-box-shadow:0 0 0 1px #ddd;box-shadow:0 0 0 1px #ddd} -.imageblock.left{margin:.25em .625em 1.25em 0} -.imageblock.right{margin:.25em 0 1.25em .625em} -.imageblock>.title{margin-bottom:0} -.imageblock.thumb,.imageblock.th{border-width:6px} -.imageblock.thumb>.title,.imageblock.th>.title{padding:0 .125em} -.image.left,.image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0} -.image.left{margin-right:.625em} -.image.right{margin-left:.625em} -a.image{text-decoration:none;display:inline-block} -a.image object{pointer-events:none} -sup.footnote,sup.footnoteref{font-size:.875em;position:static;vertical-align:super} -sup.footnote a,sup.footnoteref a{text-decoration:none} -sup.footnote a:active,sup.footnoteref a:active{text-decoration:underline} -#footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em} -#footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0} -#footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em} -#footnotes .footnote a:first-of-type{font-weight:bold;text-decoration:none;margin-left:-1.05em} -#footnotes .footnote:last-of-type{margin-bottom:0} -#content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0} -.gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0} -.gist .file-data>table td.line-data{width:99%} -div.unbreakable{page-break-inside:avoid} -.big{font-size:larger} -.small{font-size:smaller} -.underline{text-decoration:underline} -.overline{text-decoration:overline} -.line-through{text-decoration:line-through} -.aqua{color:#00bfbf} -.aqua-background{background:#00fafa} -.black{color:#000} -.black-background{background:#000} -.blue{color:#0000bf} -.blue-background{background:#0000fa} -.fuchsia{color:#bf00bf} -.fuchsia-background{background:#fa00fa} -.gray{color:#606060} -.gray-background{background:#7d7d7d} -.green{color:#006000} -.green-background{background:#007d00} -.lime{color:#00bf00} -.lime-background{background:#00fa00} -.maroon{color:#600000} -.maroon-background{background:#7d0000} -.navy{color:#000060} -.navy-background{background:#00007d} -.olive{color:#606000} -.olive-background{background:#7d7d00} -.purple{color:#600060} -.purple-background{background:#7d007d} -.red{color:#bf0000} -.red-background{background:#fa0000} -.silver{color:#909090} -.silver-background{background:#bcbcbc} -.teal{color:#006060} -.teal-background{background:#007d7d} -.white{color:#bfbfbf} -.white-background{background:#fafafa} -.yellow{color:#bfbf00} -.yellow-background{background:#fafa00} -span.icon>.fa{cursor:default} -a span.icon>.fa{cursor:inherit} -.admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default} -.admonitionblock td.icon .icon-note::before{content:"\f05a";color:#19407c} -.admonitionblock td.icon .icon-tip::before{content:"\f0eb";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111} -.admonitionblock td.icon .icon-warning::before{content:"\f071";color:#bf6900} -.admonitionblock td.icon .icon-caution::before{content:"\f06d";color:#bf3400} -.admonitionblock td.icon .icon-important::before{content:"\f06a";color:#bf0000} -.conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);-webkit-border-radius:50%;border-radius:50%;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:"Open Sans","DejaVu Sans",sans-serif;font-style:normal;font-weight:bold} -.conum[data-value] *{color:#fff!important} -.conum[data-value]+b{display:none} -.conum[data-value]::after{content:attr(data-value)} -pre .conum[data-value]{position:relative;top:-.125em} -b.conum *{color:inherit!important} -.conum:not([data-value]):empty{display:none} -dt,th.tableblock,td.content,div.footnote{text-rendering:optimizeLegibility} -h1,h2,p,td.content,span.alt{letter-spacing:-.01em} -p strong,td.content strong,div.footnote strong{letter-spacing:-.005em} -p,blockquote,dt,td.content,span.alt{font-size:1.0625rem} -p{margin-bottom:1.25rem} -.sidebarblock p,.sidebarblock dt,.sidebarblock td.content,p.tableblock{font-size:1em} -.exampleblock>.content{background:#fffef7;border-color:#e0e0dc;-webkit-box-shadow:0 1px 4px #e0e0dc;box-shadow:0 1px 4px #e0e0dc} -.print-only{display:none!important} -@page{margin:1.25cm .75cm} -@media print{*{-webkit-box-shadow:none!important;box-shadow:none!important;text-shadow:none!important} -html{font-size:80%} -a{color:inherit!important;text-decoration:underline!important} -a.bare,a[href^="#"],a[href^="mailto:"]{text-decoration:none!important} -a[href^="http:"]:not(.bare)::after,a[href^="https:"]:not(.bare)::after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em} -abbr[title]::after{content:" (" attr(title) ")"} -pre,blockquote,tr,img,object,svg{page-break-inside:avoid} -thead{display:table-header-group} -svg{max-width:100%} -p,blockquote,dt,td.content{font-size:1em;orphans:3;widows:3} -h2,h3,#toctitle,.sidebarblock>.content>.title{page-break-after:avoid} -#header,#content,#footnotes,#footer{max-width:none} -#toc,.sidebarblock,.exampleblock>.content{background:none!important} -#toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important} -body.book #header{text-align:center} -body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em} -body.book #header .details{border:0!important;display:block;padding:0!important} -body.book #header .details span:first-child{margin-left:0!important} -body.book #header .details br{display:block} -body.book #header .details br+span::before{content:none!important} -body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important} -body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-break-before:always} -.listingblock code[data-lang]::before{display:block} -#footer{padding:0 .9375em} -.hide-on-print{display:none!important} -.print-only{display:block!important} -.hide-for-print{display:none!important} -.show-for-print{display:inherit!important}} -@media print,amzn-kf8{#header>h1:first-child{margin-top:1.25rem} -.sect1{padding:0!important} -.sect1+.sect1{border:0} -#footer{background:none} -#footer-text{color:rgba(0,0,0,.6);font-size:.9em}} -@media amzn-kf8{#header,#content,#footnotes,#footer{padding:0}} - -/*! - * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome - * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) - */ - @font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.7.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-resistance:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-yc:before,.fa-y-combinator:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-tv:before,.fa-television:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}.fa-gitlab:before{content:"\f296"}.fa-wpbeginner:before{content:"\f297"}.fa-wpforms:before{content:"\f298"}.fa-envira:before{content:"\f299"}.fa-universal-access:before{content:"\f29a"}.fa-wheelchair-alt:before{content:"\f29b"}.fa-question-circle-o:before{content:"\f29c"}.fa-blind:before{content:"\f29d"}.fa-audio-description:before{content:"\f29e"}.fa-volume-control-phone:before{content:"\f2a0"}.fa-braille:before{content:"\f2a1"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:"\f2a4"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-signing:before,.fa-sign-language:before{content:"\f2a7"}.fa-low-vision:before{content:"\f2a8"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-pied-piper:before{content:"\f2ae"}.fa-first-order:before{content:"\f2b0"}.fa-yoast:before{content:"\f2b1"}.fa-themeisle:before{content:"\f2b2"}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:"\f2b3"}.fa-fa:before,.fa-font-awesome:before{content:"\f2b4"}.fa-handshake-o:before{content:"\f2b5"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-o:before{content:"\f2b7"}.fa-linode:before{content:"\f2b8"}.fa-address-book:before{content:"\f2b9"}.fa-address-book-o:before{content:"\f2ba"}.fa-vcard:before,.fa-address-card:before{content:"\f2bb"}.fa-vcard-o:before,.fa-address-card-o:before{content:"\f2bc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-circle-o:before{content:"\f2be"}.fa-user-o:before{content:"\f2c0"}.fa-id-badge:before{content:"\f2c1"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-drivers-license-o:before,.fa-id-card-o:before{content:"\f2c3"}.fa-quora:before{content:"\f2c4"}.fa-free-code-camp:before{content:"\f2c5"}.fa-telegram:before{content:"\f2c6"}.fa-thermometer-4:before,.fa-thermometer:before,.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-shower:before{content:"\f2cc"}.fa-bathtub:before,.fa-s15:before,.fa-bath:before{content:"\f2cd"}.fa-podcast:before{content:"\f2ce"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-times-rectangle:before,.fa-window-close:before{content:"\f2d3"}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:"\f2d4"}.fa-bandcamp:before{content:"\f2d5"}.fa-grav:before{content:"\f2d6"}.fa-etsy:before{content:"\f2d7"}.fa-imdb:before{content:"\f2d8"}.fa-ravelry:before{content:"\f2d9"}.fa-eercast:before{content:"\f2da"}.fa-microchip:before{content:"\f2db"}.fa-snowflake-o:before{content:"\f2dc"}.fa-superpowers:before{content:"\f2dd"}.fa-wpexplorer:before{content:"\f2de"}.fa-meetup:before{content:"\f2e0"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto} diff --git a/documentation/_styles/font-awesome.min.css b/documentation/_styles/font-awesome.min.css deleted file mode 100644 index 8646486..0000000 --- a/documentation/_styles/font-awesome.min.css +++ /dev/null @@ -1,5 +0,0 @@ -/*! - * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome - * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) - */ - @font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.7.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-resistance:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-yc:before,.fa-y-combinator:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-tv:before,.fa-television:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}.fa-gitlab:before{content:"\f296"}.fa-wpbeginner:before{content:"\f297"}.fa-wpforms:before{content:"\f298"}.fa-envira:before{content:"\f299"}.fa-universal-access:before{content:"\f29a"}.fa-wheelchair-alt:before{content:"\f29b"}.fa-question-circle-o:before{content:"\f29c"}.fa-blind:before{content:"\f29d"}.fa-audio-description:before{content:"\f29e"}.fa-volume-control-phone:before{content:"\f2a0"}.fa-braille:before{content:"\f2a1"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:"\f2a4"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-signing:before,.fa-sign-language:before{content:"\f2a7"}.fa-low-vision:before{content:"\f2a8"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-pied-piper:before{content:"\f2ae"}.fa-first-order:before{content:"\f2b0"}.fa-yoast:before{content:"\f2b1"}.fa-themeisle:before{content:"\f2b2"}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:"\f2b3"}.fa-fa:before,.fa-font-awesome:before{content:"\f2b4"}.fa-handshake-o:before{content:"\f2b5"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-o:before{content:"\f2b7"}.fa-linode:before{content:"\f2b8"}.fa-address-book:before{content:"\f2b9"}.fa-address-book-o:before{content:"\f2ba"}.fa-vcard:before,.fa-address-card:before{content:"\f2bb"}.fa-vcard-o:before,.fa-address-card-o:before{content:"\f2bc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-circle-o:before{content:"\f2be"}.fa-user-o:before{content:"\f2c0"}.fa-id-badge:before{content:"\f2c1"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-drivers-license-o:before,.fa-id-card-o:before{content:"\f2c3"}.fa-quora:before{content:"\f2c4"}.fa-free-code-camp:before{content:"\f2c5"}.fa-telegram:before{content:"\f2c6"}.fa-thermometer-4:before,.fa-thermometer:before,.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-shower:before{content:"\f2cc"}.fa-bathtub:before,.fa-s15:before,.fa-bath:before{content:"\f2cd"}.fa-podcast:before{content:"\f2ce"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-times-rectangle:before,.fa-window-close:before{content:"\f2d3"}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:"\f2d4"}.fa-bandcamp:before{content:"\f2d5"}.fa-grav:before{content:"\f2d6"}.fa-etsy:before{content:"\f2d7"}.fa-imdb:before{content:"\f2d8"}.fa-ravelry:before{content:"\f2d9"}.fa-eercast:before{content:"\f2da"}.fa-microchip:before{content:"\f2db"}.fa-snowflake-o:before{content:"\f2dc"}.fa-superpowers:before{content:"\f2dd"}.fa-wpexplorer:before{content:"\f2de"}.fa-meetup:before{content:"\f2e0"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto} diff --git a/documentation/connectors/Message.png b/documentation/connectors/Message.png deleted file mode 100644 index b89636d..0000000 Binary files a/documentation/connectors/Message.png and /dev/null differ diff --git a/documentation/connectors/create_new_connectors.adoc b/documentation/connectors/create_new_connectors.adoc deleted file mode 100644 index 8385da8..0000000 --- a/documentation/connectors/create_new_connectors.adoc +++ /dev/null @@ -1,203 +0,0 @@ -= План создания коннектора - -Для создания полноценного коннектора необходимо создать bundle с такой структурой: - -. _src/main/resource/template/<название endpoint>-in-connector.ftl_ -. _src/main/resource/template/<название endpoint>-out-connector.ftl_ -. _src/main/resource/OSGI-INF/blueprint/camel-context.xml_ -. _pom.xml_ - -== Создание шаблона входного коннектора(in-connector) - -_Входной коннектор_ - это коннектор, который получает сообщения из вне Entaxy. - -_Шаблон входного коннектора_ - ftl файл, на основе которого шина будет создавать индивидуальные входные коннекторы для каждой системы, с помощью подстановки параметров, полученных от пользователя. - -Пример созданного шаблона, где название endpoint - _example_: -_src/main/resource/template/example-in-connector.ftl_ -[source,xml] ----- - - - - - - - - - - - - - - - - - - - example - - - - - - ----- - -Создание и публикация бина: для связи коннектора с профилем, возможности получить весь список коннекторов определенного типа. -[source, xml] ----- - - - - - - - - - - ----- - -Маршрут коннектора, который полученные сообщения отправляет на выходную точку профиля, к которой прикрепляется сгенерированный пользователем route. -[source, xml] ----- - - - - example - - - ----- - -Начало маршрута входного коннектора может начинаться не с _"direct-vm:example-in-connector-[=systemName]"_, а получать сообщения, например, через определенную папку на диске. - -Для того чтобы отправить сообщение в коннектор необходимо, получить все коннекторы определенного типа (example): -[source,xml] ----- - - - - - ----- - -И отправлять сообщения с помощью: -[source,xml] ----- - ----- - -== Создание шаблона выходного коннектора(out-connector) - -_Выходной коннектор_ - это коннектор, который отправляет сообщения из Entaxy в систему (вне Entaxy). - -_Шаблон выходного коннектора_ - ftl файл, на основе которого шина будет создавать индивидуальные выходные коннекторы для каждой системы, с помощью подстановки параметров, полученных от пользователя. - -Пример созданного шаблона, где название endpoint - _example_: -_src/main/resource/template/example-out-connector.ftl_ -[source,xml] ----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ----- - -Создание и публикация бина: для связи коннектора с профилем, возможности получить весь список коннекторов определенного типа. -[source, xml] ----- - - - - - - - - - - ----- - -Маршрут выходного коннектора *должен* стартовать с: -[source,xml] ----- - ----- - -== Публикация созданных шаблонов - -Необходимо опубликовать osgi сервис с информацией об созданных шаблонах для того, чтобы механизм создания коннекторов увидел их. - -_src/main/resource/OSGI-INF/blueprint/camel-context.xml_ -[source,xml] ----- - - - - - - - - - - - - - - - - - - - - - - - - - - - ----- - -xref:../core/system-managment/Users-manual-System-management.adoc[Информация о создании коннекторов со стороны пользователя] diff --git a/documentation/connectors/db-connector/deployment_schema.png b/documentation/connectors/db-connector/deployment_schema.png deleted file mode 100644 index 33203b0..0000000 Binary files a/documentation/connectors/db-connector/deployment_schema.png and /dev/null differ diff --git a/documentation/connectors/naming_service_headers.adoc b/documentation/connectors/naming_service_headers.adoc deleted file mode 100644 index 431bf09..0000000 --- a/documentation/connectors/naming_service_headers.adoc +++ /dev/null @@ -1,86 +0,0 @@ -= Используемые служебные заголовки Entaxy - -ENTAXY_ - глобальный формат заголовков, который используется не только в рамках коннектора. Используется во всём процессе прохождения пакета, так же может быть принят извне. - -NTX_ - внутренний формат заголовков в конкретном коннекторе, носит служебный характер. -Например _NTX_Origin_ - служит для идентификации имени контура шины при прохождении пакета через мост. - -|=== -|Имя заголовка |Описание |Возможные значения |Обязательность - -|X-ForwardedUser -|логин аккаунта, проставляется с помощью _nginx_ -| -|true - -|X-ForwardedUserId -|внутренний id аккаунта, проставляется с помощью _ru.entaxy.esb.system.auth.basic.interceptor.SystemInterceptor_ -| -|true - -|X-SystemName -|имя системы, полученное при авторизации с помощью _ru.entaxy.esb.system.auth.basic.interceptor.SystemInterceptor_ -| -|true - -|X-SystemUuid -|uuid системы, полученное при авторизации с помощью _ru.entaxy.esb.system.auth.basic.interceptor.SystemInterceptor_ -| -|true - -|X-SystemId -|внутренний id системы, полученное при авторизации с помощью _ru.entaxy.esb.system.auth.basic.interceptor.SystemInterceptor_ -| -|true - -|ENTAXY_EndpointName -|Имя коннектора, через который было получено сообщение -|US-SOAP, US-File, US-JMS, .... -|true - -|ENTAXY_ConnectorType -|Тип коннектора, через который было получено сообщение -|uniform-service -|true - -|ENTAXY_ConnectorName -|Имя коннектора, через который было получено сообщение -| -|true - -|ENTAXY_Source -|Имя отправителя -| -|true - -|ENTAXY_SourceType -|Tип отправителя -|system.name, system-group.name, queue.name, topic.name -|false - -|ENTAXY_Destination -|Имя получателя -| -|false - -|ENTAXY_DestinationType -|Tип получателя -|system.name, system-group.name, queue.name, topic.name -|false - -|ENTAXY_Priority -|Приоритет сообщения -|0-9 -|false - -|ENTAXY_ContentType -|Тип сообщения -|application/xml, message/external-body -|false - -|ENTAXY_EmptyContent -|Является ли сообщение пустым -|true; false -|false -|=== - diff --git a/documentation/connectors/uniform-exchange-service/US-active.png b/documentation/connectors/uniform-exchange-service/US-active.png deleted file mode 100644 index ec9c65d..0000000 Binary files a/documentation/connectors/uniform-exchange-service/US-active.png and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/US.png b/documentation/connectors/uniform-exchange-service/US.png deleted file mode 100644 index a3a36d3..0000000 Binary files a/documentation/connectors/uniform-exchange-service/US.png and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/active-mode.adoc b/documentation/connectors/uniform-exchange-service/active-mode.adoc deleted file mode 100644 index 848d95e..0000000 --- a/documentation/connectors/uniform-exchange-service/active-mode.adoc +++ /dev/null @@ -1,76 +0,0 @@ -= Активный режим коннектора - -image::US-active.png[] - -== Сервис для отладки активного коннектора - -Поднимается на endpoint _/active_connector_test_consumer_ -при выставленной настройке _active.mode.dev=true_ в файле конфигураций _uniform.service.support.cfg_ - - -== Requests Examples - - POST http://192.168.122.83:8181/cxf/uniform-exchange - -==== SEND MESSAGE: - -[source,xml] ----- - - - - - - - b7e6aab7-8f02-443c-8f67-e2d638dd4da0 - - s1 - - - s2 - - - - - - - - - - - ----- - -==== GET MESSAGE: - - -[source,xml] ----- - - - - - - s2 - system.name - - 1 - 0 - - - ----- - -==== ACK MESSAGE: - -[source,xml] ----- - - - - - {{message_uuid}} - - - ----- diff --git a/documentation/connectors/uniform-exchange-service/ignite.adoc b/documentation/connectors/uniform-exchange-service/ignite.adoc deleted file mode 100644 index 361195d..0000000 --- a/documentation/connectors/uniform-exchange-service/ignite.adoc +++ /dev/null @@ -1,35 +0,0 @@ -= IGNITE - -IgniteAggregationRepository сделано на основе JdbsAggregationRepository -документация https://help.talend.com/reader/Uc2IlRuFVfGrjaFPdRI7kA/fBdqK2kf6iIkLHQf9nLh6g - -Есть некоторые внутренние баги karaf, которые не позволяют установить некоторые ignite фичи в караф -https://github.com/apache/ignite/blob/fd921a233d35408883695419b6f9979ac674d1b9/modules/osgi-karaf/src/main/resources/features.xml#L87 - -В карафе поднимается ignite, с рабочей директорией, прописанной в ru.entaxy.esb.ignite.cfg, -в параметре ignite.work.directory.path. Это место, где игнайт -создает для себя все, что нужно, и будет хранить данные. - -Ignite настроен с сохранением персисетнтности данных(сохранением их на диск) и -созданием реплицации(бэкапов) на других узлах кластера.(при потере одной ноды, -другие восстановят данные, которе хранились на текущем узле) - -IGNITE_QUIET=false - параметр необходимый для того, чтобы игнайт не писал информацию о себе в лог, -для того что бы параметр применился, необходимо выставить setGridLogger, -смогла установить в караф только JclLogger. - -**AggregationProcessor** - -AggregationProcessor стандартный, не расчитан на работу в кластере из-за чего пришлось вытаскивать исходники -и редактировать сам процессор.(AggregationProcessorWithRestoreTimeout) -Т к теперь AggregationProcessor вызывается как bean, а не как стандартный камеловский процессор, -то процесс старта и остановки происходит в отличном порядке. - -Для работы к кластере: -- добавлен механизм восстановления работы таймаутов на других нодах, -- отредактирован механизм удаления сообщения из репозитория(возникало состояние гонки и появлялись дубликаты), -- исправлен механизм продолжения работы с "застрявшими" сообщениями (recoverTask из таблицы _completed) -- добавлен безопасный механизм забора сообщений из очереди(восстановление сообщения в очереди, если не пришло подтверждение) - - - diff --git a/documentation/connectors/uniform-exchange-service/tests/artemis.adoc b/documentation/connectors/uniform-exchange-service/tests/artemis.adoc deleted file mode 100644 index 1614aab..0000000 --- a/documentation/connectors/uniform-exchange-service/tests/artemis.adoc +++ /dev/null @@ -1,35 +0,0 @@ -== Работа с artemis, проверка сообщений - -Консоль управления artemis расположена на _http://localhost:8161/console/login_ - -* Необходимо аутентифицироваться в artemis(где логин и пароль по умолчанию entaxy/entaxy) - -image::img/image_2021-09-13_21-39-23.png[] - -* После успешного прохождения аутентификации, консоль artemis будет выглядеть так: - -image::img/image_2021-09-13_21-40-11.png[] - -* В левой части интерфейса находятся созданные очереди artemis, где необходимо выбрать очередь, как и показано на скрине: - -image::img/image_2021-09-13_21-40-38.png[] - -* В верхней части artemis необходимо выбрать раздел _Browse_, который отображает находящиеся в очереди сообщения: - -image::img/image_2021-09-13_21-41-56.png[] - -* Выбрав сообщение, отобразится информация о сообщении: - -а) тело сообщения - -image::img/image_2021-09-13_21-42-24.png[] - -б) заголовки сообщения - -image::img/image_2021-09-13_21-42-53.png[] - -* После того как сообщение было прочитано из entaxy, и если оно было там одно, то очередь автоматически удалится из artemis. Иначе сообщение будет забрано из очереди. - -image::img/image_2021-09-13_21-43-15.png[] - - diff --git a/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-39-23.png b/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-39-23.png deleted file mode 100644 index 0f4ec07..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-39-23.png and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-40-11.png b/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-40-11.png deleted file mode 100644 index be624a9..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-40-11.png and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-40-38.png b/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-40-38.png deleted file mode 100644 index 20449f7..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-40-38.png and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-41-56.png b/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-41-56.png deleted file mode 100644 index d300eb6..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-41-56.png and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-42-24.png b/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-42-24.png deleted file mode 100644 index f6818ee..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-42-24.png and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-42-53.png b/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-42-53.png deleted file mode 100644 index a259d42..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-42-53.png and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-43-15.png b/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-43-15.png deleted file mode 100644 index de28fe5..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/image_2021-09-13_21-43-15.png and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302025.jpg b/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302025.jpg deleted file mode 100644 index e1e003a..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302025.jpg and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302028.jpg b/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302028.jpg deleted file mode 100644 index 714838f..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302028.jpg and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302031.jpg b/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302031.jpg deleted file mode 100644 index 153d8bd..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302031.jpg and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302034.jpg b/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302034.jpg deleted file mode 100644 index 0dea892..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302034.jpg and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302035.jpg b/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302035.jpg deleted file mode 100644 index e569c36..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302035.jpg and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302038.jpg b/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302038.jpg deleted file mode 100644 index 6abd2a8..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302038.jpg and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302039.jpg b/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302039.jpg deleted file mode 100644 index f67b1f3..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302039.jpg and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302041.jpg b/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302041.jpg deleted file mode 100644 index 3c9ef44..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302041.jpg and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302042.jpg b/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302042.jpg deleted file mode 100644 index b9f8691..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302042.jpg and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302043.jpg b/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302043.jpg deleted file mode 100644 index 916d6ab..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302043.jpg and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302044.jpg b/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302044.jpg deleted file mode 100644 index d9086a2..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302044.jpg and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302046.jpg b/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302046.jpg deleted file mode 100644 index 4eaf336..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302046.jpg and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302047.jpg b/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302047.jpg deleted file mode 100644 index 68afa25..0000000 Binary files a/documentation/connectors/uniform-exchange-service/tests/img/photo5298499320133302047.jpg and /dev/null differ diff --git a/documentation/connectors/uniform-exchange-service/tests/postman.adoc b/documentation/connectors/uniform-exchange-service/tests/postman.adoc deleted file mode 100644 index 2a5166d..0000000 --- a/documentation/connectors/uniform-exchange-service/tests/postman.adoc +++ /dev/null @@ -1,89 +0,0 @@ -= Инструкция для работы с шиной через универсальный коннектор - -=== Преднастройка окружения - -. Скачать и установить postman(https://www.postman.com/downloads/). -. Импортировать коллекцию запросов и окружение в postman - -Далее показано как импортироваться коллекцию запросов и окружение в postman Version 8.11.1, если стоит другая версия и возникли сложности с инструкцией, то обратитесь к документации postman(https://learning.postman.com/docs/getting-started/importing-and-exporting-data/). - -=== Импорт коллекции запросов и окружения в postman - -* Если вы на домашней странице postman, то нажмите _Import file_, как показано ниже на скрине. - -image::img/photo5298499320133302025.jpg[] - -* Если вы не на домашней странице postman, то нажмите _File_, _Import..._, как показано ниже на скрине. - -image::img/photo5298499320133302031.jpg[] - -* Далее откроется окно с импортом файла, где нужно нажать на _Upload Files_ и импортировать файлы, по одному или сразу оба(xref:postman/uniform-connector.postman_environment.json[Окружение], xref:postman/uniform-connector.postman_collection.json[Коллекция запросов]) - -image::img/photo5298499320133302028.jpg[] - -* Или можно импортировать сразу всю папку с файлами(xref:postman/uniform-connector.postman_environment.json[Окружение], xref:postman/uniform-connector.postman_collection.json[Коллекция запросов]) - -image::img/photo5298499320133302034.jpg[] - -image::img/photo5298499320133302035.jpg[] - -* Далее мы увидим импортированную коллекцию запросов слева и необходимо выбрать импортированное ранее окружение - -image::img/photo5298499320133302038.jpg[] -image::img/photo5298499320133302039.jpg[] - -* Есть возможность настраивать параметры запросов, документация на данную тему(https://learning.postman.com/docs/sending-requests/managing-environments/) - -image::img/photo5298499320133302041.jpg[] - -* Коллекция запросов и окружение были успешно импортированы в postman и готовы к использованию, можно запустить все запросы в автоматическом режиме или запускать их в ручную по очереди - -=== Запуск всех запросов в автоматическом режиме - -* Необходимо нажать на _Run Collection_ в меню коллекции, как показано ниже - -image::img/photo5298499320133302042.jpg[] -image::img/photo5298499320133302043.jpg[] - -* Можно увидеть успешное прохождение коллекции. При успешном прохождении коллекции тестов шина будет очищена. Если не подразумевалось данное поведение, то необходимо снять выделение с запросов(_Remove profile system1_, _Remove profile system2_, _Remove Account system1_, _Remove Account system2_) - -image::img/photo5298499320133302044.jpg[] -image::img/photo5298499320133302046.jpg[] - -=== Запуск запросов в ручную по очереди - -* Для запуска конкретного запроса нужно нажать на него в меню слева, затем откроется меню редактирования запроса, где можно посмотреть все параметры запроса и настроить его как необходимо и нажимая на кнопку _Send_ запрос отправляется на шину - -image::img/photo5298499320133302047.jpg[] - -=== Описание окружения - -... _base_url_ - если запросы будут запускаться с машины находящейся с шиной, то данный параметр не нужно менять(http://localhost:8181/cxf), иначе заменить localhost:8181 на необходимый -... _system1_id_ - имя/идентификатор системы, то как будет представлена система в шине(по умолчанию s1) -... _system1Login_ - логин системы, то как будет аутентифицироваться система в шине(по умолчанию s1) -... _system1Password_ - пароль системы, то как будет аутентифицироваться система в шине(по умолчанию s1) -... _system2_id_ - имя/идентификатор системы, то как будет представлена система в шине(по умолчанию s1) -... _system2Login_ - логин системы, то как будет аутентифицироваться система в шине(по умолчанию s1) -... _system2Password_ - пароль системы, то как будет аутентифицироваться система в шине(по умолчанию s1) -... _adminLogin_ - админская учетная запись, для произведения настроек в шине(по умолчанию admin) -... _adminPassword_ - админская учетная запись, для произведения настроек в шине(по умолчанию admin) - -=== Содержимое тестов -. Коллекция запросов содержит следующие шаги: -.. _Create profile system1_ - создание профиля системы 1, которая будет отправлять сообщения в шину -.. _Create profile system2_ - создание профиля системы 2 -.. _Add Account system1_ - создание учетной записи для системы 1 -.. _Add Account system2_ - создание учетной записи для системы 2 -.. _Create uniform-service-in-connector_ - создание входящего коннектора к универсальному сервису для системы 1 -.. _Create uniform-service-out-connector_ - создание исходящего коннектора к универсальному сервису для системы 1 -.. _Create uniform-service-in-connector_ - создание входящего коннектора к универсальному сервису для системы 2 -.. _Get profile system1_ - запросы для проверки на корректное создания профиля системы1 и коннекторов к нему(uniform-service-in-connector) -.. _Get profile system2_ - запросы для проверки на корректное создания профиля системы1 и коннекторов к нему(uniform-service-in-connector, uniform-service-out-connector) -.. _Create permission_ - создание разрешения для отправки сообщений из системы 1 в систему 2 -.. _SEND_ - отправка тестового сообщения из системы 1 в систему 2 (если необходимо, то можно посмотреть как сообщение появилось в xref:artemis.adoc[artemis]) -.. _GET_ - получение тестового сообщения из системы 1 системой 2(если необходимо, то можно посмотреть как сообщение было получено из xref:artemis.adoc[artemis]) -.. _ACK_ - отправка подтверждения получения сообщения системы 2(иначе сообщение будет восстановлено) -.. _Remove profile system1_ - удаление из шины профиля системы 1 и всех связанных с ней коннекторов -.. _Remove profile system2_ - удаление из шины профиля системы 2 и всех связанных с ней коннекторов -.. _Remove Account system1_ - удаление учетной записи системы 1 из шины -.. _Remove Account system2_ - удаление учетной записи системы 2 из шины \ No newline at end of file diff --git a/documentation/connectors/uniform-exchange-service/tests/postman/uniform-connector.postman_collection.json b/documentation/connectors/uniform-exchange-service/tests/postman/uniform-connector.postman_collection.json deleted file mode 100644 index 485cada..0000000 --- a/documentation/connectors/uniform-exchange-service/tests/postman/uniform-connector.postman_collection.json +++ /dev/null @@ -1,1396 +0,0 @@ -{ - "info": { - "_postman_id": "0c9cdab7-0764-42b8-a9d1-a11945d7af2a", - "name": "uniform-connector", - "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json" - }, - "item": [ - { - "name": "uniform-exchange", - "item": [ - { - "name": "settings esb", - "item": [ - { - "name": "Create profile system1", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{adminPassword}}", - "type": "string" - }, - { - "key": "username", - "value": "{{adminLogin}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{system1_id}}\n {{system1_id}}\n \n description1\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - } - }, - "response": [] - }, - { - "name": "Create profile system2", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{adminPassword}}", - "type": "string" - }, - { - "key": "username", - "value": "{{adminLogin}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{system2_id}}\n {{system2_id}}\n \n description2\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - } - }, - "response": [] - }, - { - "name": "Add Account system1", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var soapBody = responseBody.match(//g);", - " var jsonObject = xml2Json(soapBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{adminPassword}}", - "type": "string" - }, - { - "key": "username", - "value": "{{adminLogin}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n \n \n {{system1Login}}\n {{system1Password}}\n \n {{system1_id}}\n \n {{system1_id}}\n \n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/basic-auth-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "basic-auth-management" - ] - } - }, - "response": [] - }, - { - "name": "Add Account system2", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var soapBody = responseBody.match(//g);", - " var jsonObject = xml2Json(soapBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{adminPassword}}", - "type": "string" - }, - { - "key": "username", - "value": "{{adminLogin}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n \n \n {{system2Login}}\n {{system2Password}}\n \n {{system2_id}}\n \n {{system2_id}}\n \n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/basic-auth-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "basic-auth-management" - ] - } - }, - "response": [] - }, - { - "name": "Create uniform-service-in-connector", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{adminPassword}}", - "type": "string" - }, - { - "key": "username", - "value": "{{adminLogin}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n uniform-service-in-connector\n {{system1_id}}\n \n \n \n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - } - }, - "response": [] - }, - { - "name": "Create uniform-service-out-connector", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{adminPassword}}", - "type": "string" - }, - { - "key": "username", - "value": "{{adminLogin}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n uniform-service-out-connector\n {{system2_id}}\n \n \n \n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - } - }, - "response": [] - }, - { - "name": "Create uniform-service-in-connector", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{adminPassword}}", - "type": "string" - }, - { - "key": "username", - "value": "{{adminLogin}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n uniform-service-in-connector\n {{system2_id}}\n \n \n \n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - } - }, - "response": [] - }, - { - "name": "Get profile system1", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "var systemId = pm.environment.get(\"system1_id\");", - "", - "pm.test(\"Body matches \" + systemId, function () {", - " pm.expect(pm.response.text()).to.include(systemId);", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{adminPassword}}", - "type": "string" - }, - { - "key": "username", - "value": "{{adminLogin}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{system1_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Проверить созданный профиль можно с помощью метода getProfile, где вместо “system_uuid” нужно подставить uuid системы\n" - }, - "response": [] - }, - { - "name": "Get profile system2", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "var systemId = pm.environment.get(\"system2_id\");", - "", - "pm.test(\"Body matches \" + systemId, function () {", - " pm.expect(pm.response.text()).to.include(systemId);", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{adminPassword}}", - "type": "string" - }, - { - "key": "username", - "value": "{{adminLogin}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{system2_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - }, - "description": "Проверить созданный профиль можно с помощью метода getProfile, где вместо “system_uuid” нужно подставить uuid системы\n" - }, - "response": [] - }, - { - "name": "Create permission", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});", - "", - "setTimeout(function(){}, 5000);", - "" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{adminPassword}}", - "type": "string" - }, - { - "key": "username", - "value": "{{adminLogin}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{system1_id}}\n {{system2_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - } - }, - "response": [] - } - ] - }, - { - "name": "uniform-exchange-connector", - "item": [ - { - "name": "SEND", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "function getSoapBody() {", - " var soapBody = responseBody.match(//g);", - " var jsonObject = xml2Json(soapBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is OK\", function () {", - " var response = getSoapBody();", - " pm.expect(response['response']['status']).to.eql('200');", - "});", - "" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{system1Password}}", - "type": "string" - }, - { - "key": "username", - "value": "{{system1Login}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml; charset=UTF-8", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n \n \t\n \t\t\n \t{{system2_id}}\n \t\n \t\n \n b7e6aab7-8f02-443c-8f67-e2d638dd4da0\n \n {{system1_id}}\n \n \n RequestNumber\n 111\n \n \n test1\n test1\n val\n \n \n\t \t\t\n\t \t\t\n\t \t\n\t \n \n \n \n \n\n" - }, - "url": { - "raw": "{{base_url}}/uniform-exchange", - "host": [ - "{{base_url}}" - ], - "path": [ - "uniform-exchange" - ] - } - }, - "response": [] - }, - { - "name": "GET", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "function getSoapBody() {", - " var soapBody = responseBody.match(//g);", - " var jsonObject = xml2Json(soapBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "var response = getSoapBody();", - "", - "pm.test(\"Has service response\", function () {", - " pm.expect(response).to.have.property('response');", - "});", - "", - "if (response.hasOwnProperty('response')) {", - " var packet = response['response']['packets']['packet'];", - "", - " var header = packet['header'];", - " ", - " var message_id = header['transportUUID'];", - " ", - " console.log(packet['message']['content']);", - " console.log(message_id);", - " ", - " pm.globals.set('message_uuid', message_id);", - " ", - " pm.test(\"Content is OK\", function () {", - " pm.expect(packet['message']['content']).to.be.an('object');", - " });", - " ", - " pm.test(\"message_id is OK\", function () {", - " pm.expect(message_id).to.have.lengthOf(36);", - " });", - "}" - ], - "type": "text/javascript" - } - }, - { - "listen": "prerequest", - "script": { - "exec": [ - "" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{system2Password}}", - "type": "string" - }, - { - "key": "username", - "value": "{{system2Login}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml; charset=UTF-8" - } - ], - "body": { - "mode": "raw", - "raw": "\r\n \r\n \r\n \r\n \r\n {{system2_id}}\r\n system.name\r\n \r\n 1\r\n 0\r\n \r\n \r\n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/uniform-exchange", - "host": [ - "{{base_url}}" - ], - "path": [ - "uniform-exchange" - ] - } - }, - "response": [] - }, - { - "name": "ACK", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "function getSoapBody() {", - " var soapBody = responseBody.match(//g);", - " var jsonObject = xml2Json(soapBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is 200\", function () {", - " var response = getSoapBody();", - " pm.expect(response['response']['status']).to.eql('200');", - "});", - "" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{system2Password}}", - "type": "string" - }, - { - "key": "username", - "value": "{{system2Login}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "type": "text", - "value": "application/xml; charset=UTF-8" - } - ], - "body": { - "mode": "raw", - "raw": "\r\n \r\n \r\n \r\n {{message_uuid}}\r\n \r\n \r\n\r\n" - }, - "url": { - "raw": "{{base_url}}/uniform-exchange", - "host": [ - "{{base_url}}" - ], - "path": [ - "uniform-exchange" - ] - } - }, - "response": [] - } - ], - "event": [ - { - "listen": "prerequest", - "script": { - "type": "text/javascript", - "exec": [ - "" - ] - } - }, - { - "listen": "test", - "script": { - "type": "text/javascript", - "exec": [ - "" - ] - } - } - ] - }, - { - "name": "clean esb", - "item": [ - { - "name": "Remove profile system1", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{adminPassword}}", - "type": "string" - }, - { - "key": "username", - "value": "{{adminLogin}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{system1_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - } - }, - "response": [] - }, - { - "name": "Remove profile system2", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var jsonObject = xml2Json(responseBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{adminPassword}}", - "type": "string" - }, - { - "key": "username", - "value": "{{adminLogin}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n {{system2_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/system-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "system-management" - ] - } - }, - "response": [] - }, - { - "name": "Remove Account system1", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var soapBody = responseBody.match(//g);", - " var jsonObject = xml2Json(soapBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{adminPassword}}", - "type": "string" - }, - { - "key": "username", - "value": "{{adminLogin}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n \n {{system1_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/basic-auth-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "basic-auth-management" - ] - } - }, - "response": [] - }, - { - "name": "Remove Account system2", - "event": [ - { - "listen": "test", - "script": { - "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});", - "", - "pm.test(\"Body matches true\", function () {", - " pm.expect(pm.response.text()).to.include(\"true\");", - "});", - "", - "function getSoapBody() {", - " var soapBody = responseBody.match(//g);", - " var jsonObject = xml2Json(soapBody);", - " return jsonObject['soap:Envelope']['soap:Body'];", - "}", - "", - "pm.test(\"Response is true\", function () {", - " var response = getSoapBody();", - " pm.expect(response.response._).to.eql('true');", - "});" - ], - "type": "text/javascript" - } - } - ], - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "{{adminPassword}}", - "type": "string" - }, - { - "key": "username", - "value": "{{adminLogin}}", - "type": "string" - } - ] - }, - "method": "POST", - "header": [ - { - "key": "Content-Type", - "name": "Content-Type", - "value": "application/xml", - "type": "text" - }, - { - "key": "X-ForwardedUser", - "value": "{{adminLogin}}", - "type": "text" - } - ], - "body": { - "mode": "raw", - "raw": "\n \n \n \n \n {{system2_id}}\n \n \n", - "options": { - "raw": { - "language": "xml" - } - } - }, - "url": { - "raw": "{{base_url}}/basic-auth-management", - "host": [ - "{{base_url}}" - ], - "path": [ - "basic-auth-management" - ] - } - }, - "response": [] - } - ] - } - ], - "description": "для тестирования нужно добавть в environment: system1_id, system2_id", - "event": [ - { - "listen": "prerequest", - "script": { - "type": "text/javascript", - "exec": [ - "" - ] - } - }, - { - "listen": "test", - "script": { - "type": "text/javascript", - "exec": [ - "" - ] - } - } - ] - } - ] -} \ No newline at end of file diff --git a/documentation/connectors/uniform-exchange-service/tests/postman/uniform-connector.postman_environment.json b/documentation/connectors/uniform-exchange-service/tests/postman/uniform-connector.postman_environment.json deleted file mode 100644 index eeb0632..0000000 --- a/documentation/connectors/uniform-exchange-service/tests/postman/uniform-connector.postman_environment.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "id": "527e5257-25b4-4246-ac5a-26b88e06eec8", - "name": "uniform-connector", - "values": [ - { - "key": "base_url", - "value": "http://localhost:8181/cxf", - "enabled": true - }, - { - "key": "system1_id", - "value": "s1", - "enabled": true - }, - { - "key": "system2_id", - "value": "s2", - "enabled": true - }, - { - "key": "adminLogin", - "value": "admin", - "enabled": true - }, - { - "key": "adminPassword", - "value": "admin", - "enabled": true - }, - { - "key": "system1Login", - "value": "s1", - "enabled": true - }, - { - "key": "system1Password", - "value": "s1", - "enabled": true - }, - { - "key": "system2Login", - "value": "s2", - "enabled": true - }, - { - "key": "system2Password", - "value": "s2", - "enabled": true - } - ], - "_postman_variable_scope": "environment", - "_postman_exported_at": "2021-08-24T14:43:46.375Z", - "_postman_exported_using": "Postman/7.36.5" -} \ No newline at end of file diff --git a/documentation/connectors/uniform-exchange-service/uniform-exchange-service.adoc b/documentation/connectors/uniform-exchange-service/uniform-exchange-service.adoc deleted file mode 100644 index bb3be05..0000000 --- a/documentation/connectors/uniform-exchange-service/uniform-exchange-service.adoc +++ /dev/null @@ -1,38 +0,0 @@ -= Универсальный сервис(US) - -Универсальный сервис разработан для корректного и единообразного взаимодействия с _Entaxy_ из _1С интеграции_. - -image::US.png[] - -=== US endpoint - -Универсальный сервис выставлен с помощью soap (может быть заменен на любой другой способ обмена сообщения, например rest, с сохранением схемы), в котором 3 метода _sendPackets_, _getPackets_ и _confirmPackets_. US endpoint включает в себя: выставленный soap сервис, проверку на существование коннектора и отправку в коннектор(что верно и для uniform-service-service-endpoint) - -=== US connector - -Коннектор занимается обработкой полученного пакета. - -- _sendPackets_ - шина анализирует пакет, создавая служебную информацию(такую как имя системы отправителя, имя и тип получателя и т д) и отправляет в выходную точку профиля. - -- _getPackets_ - шина делает проверку служебной информации(такую как имя системы отправителя, имя и тип получателя и т д) и забирает сообщение из очереди, дополнительно отправляя его в агрегатор. Агрегатор необходим для гарантированной доставки пакета, если в течение заданного таймаута (по умолчанию - 10 минут) не придет подтверждение, то пакет будет считаться не доставленным и будет восстановлен в очереди. - -- _confirmPackets_ - шина делает проверку служебной информации(такую как имя системы отправителя, имя и тип получателя и т д), достает пакет из соответствующего источника (если оно есть) и отдает его системе, дополнительно отправляя в агрегатор, который если собирает пару(пакет и подтверждение) считает его доставленным и удаляет из шины. - -_Агрегатор_ может хранить сообщения в ignite и базе данных, для переключения режима работы агрегатора необходимо установить необходимый параметр acknowledge.aggregation.repository (по умолчанию - jdbcAggregationRepository) в uniform.service.support.cfg - -https://help.talend.com/r/Bejd_\~iSyuyc~nF9XIgDIw/fBdqK2kf6iIkLHQf9nLh6g[Информация по jdbcAggregationRepository] - -xref:ignite.adoc[Информация по igniteAggregationRepository] - -=== US support - -Необходим как вспомогательный элемент. Содержит в себе: настройку агрегатора, маршруты работы агрегатора, маршрут связанный с отправкой в систему в активном режиме коннектора. - -== Режимы универсального сервиса: - -- _Пассивный_ выражен в поднятом на стороне шины сервисе, который "пассивно" ждет запроса от системы. - -- _Активный_ выражен в поднятом на стороне системы сервисе, который с некоторой периодичностью (настраивается при создании коннектора, по умолчанию 1m) опрашивает шина на предмет подготовленных сообщений, и, отправляет полученные сообщения в систему как только они пришли. - -xref:active-mode.adoc#_активный_режим_коннектора[Информация по активному режиму работы универсального сервиса] - diff --git a/documentation/core/Common-description-of-the-transport-layer.adoc b/documentation/core/Common-description-of-the-transport-layer.adoc deleted file mode 100644 index 2ec470c..0000000 --- a/documentation/core/Common-description-of-the-transport-layer.adoc +++ /dev/null @@ -1,219 +0,0 @@ -= Общее описание Entaxy - -=== Entaxy обеспечивает следующую функциональность: - -. обеспечение доступа внешних систем к шине через опубликованные сервисы (SOAP, REST, прочее) -. поддержка синхронного и асинхронного способа вызова служб; -. использование защищённой шины, с гарантированной доставкой сообщений, поддерживающего транзакционную модель; -. статическая и алгоритмическая (условная, опирающаяся на значение передаваемых данных) маршрутизация сообщений; -. доступ к данным из сторонних информационных систем с помощью готовых или специально разработанных адаптеров; -. обработка и преобразование сообщений; -. отказоустойчивая конфигурация; -. разнообразные механизмы контроля и управления (аудиты, протоколирование); -. мониторинг данных и бизнес-процессов - -=== Entaxy решает следующие задачи: - -. обмен сообщениями/данными между приложениями и ИС -. организация точек доступа к услугам (сервисам) и данным -. унификация взаимодействия с внешними ИС -. мониторинг данных и бизнес-процессов -. снижение трудоемкости процесса сбора и агрегации информации -. повышение оперативности подготовки отчетов -. обеспечение автоматизированной проверки данных, используемых в процессе деятельности - -=== Entaxy реализована на следующем наборе ПО: - -- ОС: _Astra Linux 1.6 смоленск_ ? -- Программная платформа: _Java 11 (librca)_ -- СУБД (предоставляется заказчиком): _MS SQL Server_ -- СУБД (может использоваться): _PostgreSQL JDBC Driver_ -- Платформа исполнения: _Apache Karaf 4.2.9_ -- Платформа интеграции: _Apache Camel 3.4.4_ -- Каркас реализации веб-сервисов: _Apache CXF 3.4.0_ -- Брокер сообщений: _ActiveMQ Artemis 2.15_ -- Система мониторинга (предоставляется заказчиком): _Zabbix, Grafana_ -- Система управления журналами (предоставляется заказчиком): _стек ELK_ - -=== Схема развертывания - -Ниже представлена схема развертывания основных компонентов шины, содержащая следующие элементы: - -. кластер _NGINX_ - два узла, обеспечивающих отказоустойчивый балансировщик нагрузки, с одним виртуальным IP-адресом -. кластер _Karaf_ - в начальной конфигурации используется 2 узла, в дальнейшем схема масштабируется горизонтально. Наличие кластера обеспечивает отказоустойчивость и производительность, так как нагрузка распределяется между всеми активными узлами -. кластер брокера сообщений _ActiveMQ Artemis_ - отказоустойчивая конфигурация "активный - пассивный", в которой все транзакции активного брокера реплицируются на пассивный. При выходе из строя активного брокера, активным становится пассивный. Все вызовы брокера сообщений осуществляются по схеме failover, которая гарантирует переадресацию запроса в случае недоступности основного узла. -. отказоустойчивый кластер СУБД - предоставляется заказчиком -. _NFS Share_ - подключаемое сетевое файловое хранилище, предоставляется заказчиком -. _ELK_ - узел сбора и обработки логов стеком продуктов ELK (ElasticSearch, Logstash, Kibana) -. узел сбора и обработки метрик с установленными продуктами Zabbix и Grafana - -image::clustering.png[] - -Ниже представлена схема деплоя профилей/коннекторов в шине: - -image::System-management.png[] - -=== Список и характеристики узлов предпродуктивного контура - - -|=== -|Имя сервера |Ресурсы |Назначение |Операционная система |Софт - -| PREPRD_NGINX1 -| 2xCPU, 4Gb RAM, 40 Gb Local -| Балансировщик -| AstraLinux SE 1.6 -| Nginx - -| PREPRD_NGINX2 -| 2xCPU, 4Gb RAM, 40 Gb Local -| Балансировщик -| AstraLinux SE 1.6 -| Nginx - -| PREPRD_KRF1 -| 8xCPU, 12 Gb RAM, 60 Gb Local -| Платформа запуска интеграционных маршрутов -| AstraLinux SE 1.6 -| Apache Karaf, Cellar, java-1.8.0-openjdk - -| PREPRD_KRF2 -| 8xCPU, 12 Gb RAM, 60 Gb Local -| Платформа запуска интеграционных маршрутов -| AstraLinux SE 1.6 -| Apache Karaf, Cellar, java-1.8.0-openjdk - -| PREPRD_NEXUS -| 4xCPU, 12 Gb RAM, 60 Gb Local -| Хранение артефактов -| AstraLinux SE 1.6 -| Nexus - -| PREPRD_AMQ1 -| 4xCPU, 16 Gb RAM, 60 Gb Local -| Брокер сообщений -| AstraLinux SE 1.6 -| Java, ActiveMQ Artemis - -| PREPRD_AMQ2 -| 4xCPU, 16 Gb RAM, 60 Gb Local -| Брокер сообщений -| AstraLinux SE 1.6 -| Java, ActiveMQ Artemis -|=== - -=== Схема прохождения пакета _Система1_ - _Система2_ - -Ниже представлена схема прохождения пакета на примере обмена данными между двумя экземплярами системами. - -Экземпляры систем соединяются с шиной через _Коннектор_, который взаимодействует с сервисом SOAP, Универсальный коннектор, (контекст/cxf/uniform-exchange), предоставляемым шиной. - -Укрупненно маршрут выглядит следующим образом: - -. доставка сообщения до очереди получателя: CXF-сервис -> маршрут Camel send-to-jms -> очередь в Artemis -. получение сообщения: CXF-сервис -> очередь в Artemis -. подтверждение получения: CXF-сервис -> маршрут Camel receive-acknowledge - -image::route_packet.png[] - -=== Средства мониторинга и отладки - -Для мониторинга работы и отладки шины для сценария прохождения пакета могут быть использованы следующие инструменты. - -==== Журнал (лог) Nginx - -Логи Nginx’a располагаются в папке по пути “/var/log/nginx”. - -В папке с логами Nginx’a располагаются 2 типа логов: - -. Access - отображает все процессы, которые проходят через Nginx. -В случае когда запрос отработал успешно, сервер возвращает код 200 в access.log и записывает строку с URL запроса, кодом, размером ответа и временем получения ответа. -. Error - отображает процессы, в которых возникли ошибки -В случае когда запрос отработал с ошибкой, сервер возвращает код 400 (например) в error.log и записывает строку с URL запроса, кодом, кратким описанием ошибки, размером ответа, временем получения ответа и юзер-агентом (HTTP-заголовок, который показывает из какого браузера или иного софта был отправлен запрос). - -==== Трассировка маршрутов Camel - -_Apache Сamel_ - это платформа для запуска интеграционных маршрутов (процессов), которые в самой платформе называются “route”. Основными функциями Apache Camel являются подключения по различным протоколам, маршрутизация запросов и сообщений, а также преобразование данных. - -Работа с маршрутами в Apache Camel и самой платформой осуществляется из hawtio. Hawtio - это графическая консоль управления. Hawtio доступна по следующим ссылкам: - -Karaf-1 - http://<<+host+>>:8181/hawtio/ - -image::screenshots/screenshot_hawtio_1.png[] - -Трассировка маршрутов в hawtio производится на вкладке “Camel”, путем выбора маршрута (папка route) в левой области экрана и перехода на вкладку “Trace”. - -image::screenshots/screenshot_hawtio_2.png[] -image::screenshots/screenshot_hawtio_3.png[] - -После перехода необходимо нажать на кнопку “Start tracing”, платформа запустит трассировку маршрута и выведет на экран схему процесса трассировки. - -image::screenshots/screenshot_hawtio_4.png[] - -В связи с тем что в 3й версии Camel, используемой нами, трассировка по умолчанию отключена потребуется подготовить отлаживаемый контекст. Для этого необходимо включить параметры _backlogTrace_ и _useBreadcrumb_. - -Пример: -[source,xml] ----- - ----- - -Так же для удобства работы можно включить отображение потоков в текстовом формате. -Для этого в Настройках(Preferences) hawtio нужно включить флаг Include trace/debug streams - -image::screenshots/screenshot_hawtio_5.png[] - -В веб-консоли hawtio, помимо работы с маршрутами, есть возможность установки бандлов, плагинов (вкладка OSGI) -Возможность просмотра логов и прочее. - -image::screenshots/screenshot_hawtio_6.png[] -image::screenshots/screenshot_hawtio_7.png[] - -=== Веб-консоль брокера сообщений - -Добавить описание, урлы (для обоих брокеров) и скриншоты на примере любой очереди. Показать, где содержимое, где рейт и прочее. - -Apache ActiveMQ - это брокер сообщений, основной функцией которого является отправка и получение сообщений. - -Работа с брокером сообщений производится через веб-консоль, перейти на которые можно по следующим ссылкам: - -ActiveMQ-1 - http://<<+host+>>:8161/console/ - -image::screenshots/screenshot_artemis_1.png[] - -В веб-консоли можно просматривать очереди сообщений на вкладке “Queues”. - -image::screenshots/screenshot_artemis_2.png[] - -На этой же вкладке можно просмотреть название очереди, адрес очереди. - -image::screenshots/screenshot_artemis_3.png[] - -Посмотреть скорость обмена сообщениями (столбец “Rate”), количество сообщений в очереди. - -image::screenshots/screenshot_artemis_4.png[] - -На вкладке “Producer” можно посмотреть данные об отправленных сообщениях (id сообщений, название адресов, на которые были отправлены сообщения). - -image::screenshots/screenshot_artemis_5.png[] - -На вкладке “Consumers” можно посмотреть данные о полученных сообщениях (id сообщений, из какой очереди пришли сообщения, название адресов, с которых были получены сообщения). - -image::screenshots/screenshot_artemis_6.png[] - -В левой области экрана можно выбрать в списке нужную очередь и посмотреть количество сообщений в ней. - -image::screenshots/screenshot_artemis_7.png[] - -При выборе очереди, автоматически открывается вкладка “Browse”, на которой отображаются все сообщения из выбранной очереди. При нажатии на id сообщения, появится диалоговое окно с сообщением. - -image::screenshots/screenshot_artemis_8.png[] - -При необходимости сообщение можно переместить в другую очередь (кнопка “Move”) или удалить (кнопка “Delete”). - -image::screenshots/screenshot_artemis_9.png[] - -Также в консоли имеется возможность полностью очистить очередь от сообщений или полностью удалить очередь из брокера сообщений, выбрав очередь в левой области экрана и перейдя на вкладку “Delete”. - -image::screenshots/screenshot_artemis_10.png[] - diff --git a/documentation/core/Control Service.png b/documentation/core/Control Service.png deleted file mode 100644 index 42ff766..0000000 Binary files a/documentation/core/Control Service.png and /dev/null differ diff --git a/documentation/core/System-management.png b/documentation/core/System-management.png deleted file mode 100644 index 70ac1e4..0000000 Binary files a/documentation/core/System-management.png and /dev/null differ diff --git a/documentation/core/auth/Authentication.png b/documentation/core/auth/Authentication.png deleted file mode 100644 index 992eb01..0000000 Binary files a/documentation/core/auth/Authentication.png and /dev/null differ diff --git a/documentation/core/auth/Authorization.adoc b/documentation/core/auth/Authorization.adoc deleted file mode 100644 index d693556..0000000 --- a/documentation/core/auth/Authorization.adoc +++ /dev/null @@ -1,169 +0,0 @@ -= Общие положения - -При передаче сообщения от внешней системы в шину происходит процесс аутентификации внешней системы в шине. Т.е. при передаче сообщения шине с помощью сервера _nginX_ по протоколу _basic_ аутентификации сверяет присвоенные сообщению логин и пароль системы, от которой передается сообщение с ее логином, зарегистрированным в шине. При совпадении логина и пароля сообщение проходит от внешней системы через шину к другой системе. Если же пара логин – пароль не совпадает, то система блокирует сообщение. - -image::Authentication.png[Аутентификация с помощью nginx] - -Обновление учетных записей на _nginx_ по данным от сервиса _basic-auth-management_ проходит каждую минуту. - -Для компактной установки шины без _nginx_ модуль реализует интерцептор для basic аутентификации при обращении к сервисам. Включить встроенную аутентификацию можно в конфигурационном файле ru.entaxy.esb.system.basic_auth.cfg -> свойство internal.authentication.enabled. - -Сервис _basic-auth-management_ служит для работы с учетными записями (аккаунтами) через протокол _SOAP_. - -В сервисе существуют три вида запросов: - -* Добавление аккаунтов; -* Обновление аккаунтов; -* Удаление неактуальных аккаунтов. -* Выдача прав аккаунту -* Удаление прав аккаунта - -=== Добавление аккаунта - -Метод для добавления учетных записей _(addAccount)_ разработан для добавления новых пользователей в систему. - -Запрос на добавление аккаунта выглядит следующим образом: -[source,xml] ----- - - - - - - - system1login - system1pass - - system1uuid - - - - ----- - - -В теле содержится список аккаунтов – это повторение элементов _account_ неограниченное число раз. Также в теле содержатся обязательные поля __ (логин) и __ (пароль). Поле __ (идентефикатор системы) является необязательным. - -Пароль принимается в прямом виде и шифруется непосредственно перед сохранением, чтобы он не хранился в открытом виде. - -=== Обновление аккаунта - -Метод для обновления учетной записи _(updateAccount)_ разработан для обновления следующей информации: - -* новый пароль системы; -* присвоение учетной записи к другой системе. - -Запрос на обновление аккаунта выглядит следующим образом: -[source,xml] ----- - - - - - - - system1login - system1pass - - system1uuid - - - system2login - system2pass - - - - ----- - -В теле содержится список аккаунтов, который содержит информацию аналогичную из п.2. - -=== Удаление аккаунта - -Метод для удаления аккаунта _(removeAccount)_ служит для удаления аккаунта из системы. - -Запрос на удаление аккаунта выглядит следующим образом: -[source,xml] ----- - - - - - - system1login - system2login - - - ----- - -В теле содержится неограниченный список логинов _(loginList)_, которые будут удалены из системы. - -=== Выдача прав аккаунту - -Метод выдачи прав аккаунту _(addAccountPermission)_ служит для создания _permission_ связанных с переданным аккаунтом. - -Запрос на создание права выглядит следующим образом: -[source,xml] ----- - - - - - - - dog - topic-management - service - - - - - dog - system-management - service - - - - - - ----- - - -Если параметр action пустой либо отсутствует в сервисе _permission_ по умолчанию подставляется _default_. - - -=== Удаление прав аккаунта - -Метод удаления прав аккаунта _(removeAccountPermission)_ служит для удаления _permission_ связанных с переданным аккаунтом. - -Запрос на создание права выглядит следующим образом: -[source,xml] ----- - - - - - - - dog - topic-management - service - - - - - dog - system-management - service - - - - - - ----- - - -Если параметр _action_ пустой либо отсутствует в сервисе permission по умолчанию подставляется _default_. diff --git a/documentation/core/bridge/Bridge-Description-and-Configuration.adoc b/documentation/core/bridge/Bridge-Description-and-Configuration.adoc deleted file mode 100644 index 089a76d..0000000 --- a/documentation/core/bridge/Bridge-Description-and-Configuration.adoc +++ /dev/null @@ -1,79 +0,0 @@ -Связь между двумя независимыми брокерами осуществляется с помощью моста. Карафы подключенные к одному брокеру далее будут именоваться шиной. - -image::Route-in-different-esb.png[Прохождение пакета через группу и мост] - -== Установка и настройка - -Установка модуля происходит через фичу: - -* _feature:install bridge_ - -Фича включена в общий установочный скрипт и будет устанавливаться вместе с остальными модулями. Во время установки фичи в караф копируются файлы конфигурации: - -* _ru.entaxy.esb.system.bridge.cfg (основная конфигурация)_ - -=== ru.entaxy.esb.system.bridge.cfg (основная конфигурация) -[source,properties] ----- -# имя локальной шины() -jms.local=test1 -# значение true - мост текущего узла работает в пассивном режиме, -# т.е. сообщения для соответствующего удалённого узла складываются в очередь на локальном брокере, -# из которой уже читает подключаемый узел (локальный брокер должен быть доступен для соединения) -# По умолчанию false - активный режим, запись сообщения идёт сразу в очередь на удалённом брокере, -# подключаемого узла (брокеры по обе стороны моста должны быть доступны) -jms.local.master=false -# имена удаленных шин, задается через запятую(,) -jms.remote.list=test2 - -# адреса брокера, задаются чеерез запятую(jms.url.) -jms.url.test1=192.168.122.81:61616,192.168.122.82:61616 -# логин для подключения к брокеру(jms.username.) -jms.username.test1=input -# пароль для подключения к брокеру(jms.password.) -jms.password.test1=input -# протокол для передачи сообщений внутри шины(jms.protocol.inner.esb.) -# для корректной работы синхронного режима передачи сообщений: необходимо следить -# за одинаковым значением данного параметра в мосту и в самой шине(ru.entaxy.esb.cfg) -# возможные значения tcp, amqp -jms.protocol.inner.esb.test1=tcp -# протокол для передачи сообщений между шинами(jms.protocol.bridge.esb.) -# для корректной работы синхронного режима передачи сообщений: необходимо следить -# за одинаковым значением данного параметра во всех подключенных шинах -# возможные значения tcp, amqp -jms.protocol.bridge.test1=amqp - -# адреса брокера, задаются чеерез запятую(jms.url.) -jms.url.test2=localhost:61616 -# логин для подключения к брокеру(jms.username.) -jms.username.test2=input -# пароль для подключения к брокеру(jms.password.) -jms.password.test2=input -# jms.master. - выставляем в true, когда соответствующий узел настроен в пассивный режим, -# т.е. для него jms.local.master = true (брокер должен быть доступен для соединения) -jms.master.test2=true -# протокол для передачи сообщений внутри шины(jms.protocol.inner.esb.) -# для корректной работы синхронного режима передачи сообщений: необходимо следить -# за одинаковым значением данного параметра в мосту и в самой шине(ru.entaxy.esb.cfg) -# возможные значения tcp, amqp -jms.protocol.inner.esb.test2=tcp -# протокол для передачи сообщений между шинами(jms.protocol.bridge.esb.) -# для корректной работы синхронного режима передачи сообщений: необходимо следить -# за одинаковым значением данного параметра во всех подключенных шинах -# возможные значения tcp, amqp -jms.protocol.bridge.test2=amqp - -# максимальное колчичество попыток отправить сообщение в очередь -# почитать подробнее можно в https://camel.apache.org/components/latest/eips/dead-letter-channel.html#deadLetterChannel-Redelivery -redelivery.maximumRedeliveries=-1 -# время между попытками отправить сообщение в очередь -redelivery.redeliveryDelay=5000 -# экспоненциальный рост времени между попытками отпрвки сообщений в очередь -redelivery.useExponentialBackOff=true - -queue.sender.concurrentConsumers=1 -queue.receiver.concurrentConsumers=1 ----- - - - diff --git a/documentation/core/bridge/Route-in-different-esb.png b/documentation/core/bridge/Route-in-different-esb.png deleted file mode 100644 index e234240..0000000 Binary files a/documentation/core/bridge/Route-in-different-esb.png and /dev/null differ diff --git a/documentation/core/clustering.png b/documentation/core/clustering.png deleted file mode 100644 index e5893e3..0000000 Binary files a/documentation/core/clustering.png and /dev/null differ diff --git a/documentation/core/deployer/deployer-common.adoc b/documentation/core/deployer/deployer-common.adoc deleted file mode 100644 index 3e4ce6c..0000000 --- a/documentation/core/deployer/deployer-common.adoc +++ /dev/null @@ -1,44 +0,0 @@ -= Файловые репозитории - -*Nexus* - представлен бандлом SYSTEM :: ENTAXY :: NEXUS :: DEPLOYER, реализует взаимодействие с репозиторием Sonatype Nexus. - Конфигурация ru.entaxy.esb.deployer.nexus.cfg -[source] ----- -# все смены адреса расположения nexus и изменение наименования репозитория, необходимо фиксировать в файле -# org.ops4j.pax.url.mvn.cfg параметр: org.ops4j.pax.url.mvn.repositories - -# url расположения nexus -nexus.deployer.url=http://nexusHost -# название репозитория в nexus, необходимого для конфигурирования шины из вне(создание профилей, коннекторов и т д) -nexus.deployer.repository=entaxy -# логин для авторизации в nexus -nexus.deployer.username=deployer -# пароль для авторизации в nexus -nexus.deployer.password=deployer ----- - -*File-system* - представлен бандлом SYSTEM :: ENTAXY :: FILE SYSTEM :: DEPLOYER, реализует взаимодействие с файловой системой, т.е. сохраняет переданные файлы в настроенной папке. - Конфигурация ru.entaxy.esb.deployer.file.system.cfg -[source] ----- -#Корневая папка репозитория -folder.root=/opt/bundle-repository ----- - - -=== Настройка системы - -По умолчанию деплоятся оба бандла и система использует репозиторий File-system. - -Для включения нужного репозитория необходимо оставить включённым бандл того репозитория, который требуется использовать. - -_Пример:_ - По умолчанию включён репозиторий File-system, для включения репозитория Nexus отключаем/удаляем бандл SYSTEM :: ENTAXY :: FILE SYSTEM :: DEPLOYER - - - - - - diff --git a/documentation/core/exception/Centralized-error-handler.adoc b/documentation/core/exception/Centralized-error-handler.adoc deleted file mode 100644 index e4f54a3..0000000 --- a/documentation/core/exception/Centralized-error-handler.adoc +++ /dev/null @@ -1,144 +0,0 @@ -Централизованный обработчик ошибок для формирования кодов ошибок, их синхронного возврата клиенту и для асинхронного дублирования более подробного описания ошибки для клиента и для Центральной Базы Интеграции. - -image::Error-handling-Scheme.jpg[] - -= Установка и настройка - -Установка модуля происходит через фичу: - -* _feature:install error-handler_ - -Фича включена в общий установочный скрипт и будет устанавливаться вместе с остальными модулями. Во время установки фичи в караф копируются файлы конфигурации: - -* _ru.entaxy.esb.error.cfg (основная конфигурация)_ -* _ru.entaxy.esb.error.code.cfg (справочник исключений с маппингом на коды ошибок)_ -* _ru.entaxy.esb.error.text.cfg (справочник кодов ошибок с маппингом на текстовые сообщения)_ - -Есть возможность настройки маппинга уровней журналирования через файл конфигурации ru.entaxy.esb.error.severity.cfg. - -* _ru.entaxy.esb.error.cfg (основная конфигурация)_ - -[source,properties] ----- -# асинхронный пакет с ошибкой отправляется от имени: -# false - системы, вызвавшей ошибку в шине -# true - шины (система с идентификатором "-1") -ru.entaxy.esb.error.bus.always_at_source=false - -# асинхронный пакет с ошибкой в поле description содержит: -# false - сообщение из маппинга в файле ru.entaxy.esb.error.text.cfg -# true - содержит сообщение, сохранённое в исключении -ru.entaxy.esb.error.description.exception_message=true - -# имя очереди для отправки пакета с ошибкой при недоступности системы, указанной в свойстве ru.entaxy.esb.error.system.name -ru.entaxy.esb.error.queue.name=error - -# имя системы для отправки пакета с ошибкой, подразумевается система ЦБИ -ru.entaxy.esb.error.system.name=error - -# true - включает в пакет с ошибкой весь stacktrace исключения -ru.entaxy.esb.error.stacktrace.show=true - -# свойство автоматического запуска тестового маршрута, который при старте модуля бросает исключение java.lang.IllegalArgumentException: Test exception thrown -ru.entaxy.esb.error.test-route.startup=false ----- - -* _ru.entaxy.esb.error.code.cfg (справочник исключений с маппингом на коды ошибок)_ - -Справочник содержит соответствие имён классов исключений и _http_ кодов ошибок. И будет наполняться по мере использования шины в разных ситуациях. Для исключения, имя которого ещё не указано в этом файле, будет возвращаться _http_ код _520 (Unknown Error)._ - -[source,properties] ----- -DefaultException=520 -com.ctc.wstx.exc.WstxParsingException=400 -java.security.AccessControlException=403 -javax.ws.rs.ForbiddenException=403 -ru.onec.esb.system.common.exception.ConnectorNotFound=424 -ru.onec.esb.system.common.exception.DefaultException=520 -ru.onec.esb.system.common.exception.ProfileNotFound=424 -# и т.д. ----- - -* _ru.entaxy.esb.error.text.cfg (справочник кодов ошибок с маппингом на текстовые сообщения)_ - -Если в основной конфигурации свойство _ru.entaxy.esb.error.description.exception_message_ установлено в _false_, то описание ошибки отправляется из этого файла в соответствие с кодом _http_ ошибки. - -[source,properties] ----- -# 1xx: Informational -# 2xx: Success -200=OK - -# 3xx: Redirection -# 4xx: Client Error -400=Bad Request -403=Forbidden -424=Failed Dependency - -# 5xx: Server Error -520=Unknown Error -# и т.д. ----- - -=== Подключение обработчика ошибок - -Для подключения обработчика ошибок к маршрутам какого-либо модуля необходимо выполнить следующие шаги: - -. Добавить в модуль обработки ошибок в директорию _src/main/resources/xslt/operation_ новый _xslt_ для формирования ответа с ошибкой. Файл должен называться по имени операции, для которой будет формироваться ответ. Например _sendToJMS.xsl_. -. Добавить в _camelContext_ аттрибут _errorHandlerRef="commonErrorHandler"_ и внутри зарегистрировать обработчик и политику повторной доставки: - -[source,xml] ----- - - - - - - ----- - -Для контекстов, содержащих конечные точки _cxf_, необходимо: - -через _pom.xml_ импортировать интерцептор для перехвата ошибок (_SoapFault_) - -[source,xml] ----- - - ru.onec.esb.system.core.common.error.handler.interceptor, - ... - ----- - -добавить интерцептор в _cxfEndpoint_ и _bean_ с указанием в первом аргументе идентификатора _camelContext_ - -[source,xml] ----- - - - - - - - - - - - ----- - -в _camelContext_ добавить маршрут - -[source,xml] ----- - - - - - - ----- - - diff --git a/documentation/core/exception/Error-description.adoc b/documentation/core/exception/Error-description.adoc deleted file mode 100644 index 82b3d7f..0000000 --- a/documentation/core/exception/Error-description.adoc +++ /dev/null @@ -1,31 +0,0 @@ -= Использование обработчика ошибок - -Для централизованной обработки ошибок будем использовать “процессор” зарегистрированный через _ - - - - 1 - system - 2 - system - - default - - - ----- - -Пример ответа: - -[source,xml] ----- - - - false - - ----- - - -=== Get - получает запись Permission - -Принимает параметры - -_permissionId_ (long) - идентификатор объекта _permission_ - -Пример запроса: -[source,xml] ----- - - - - 24 - - ----- - -Пример ответа: -[source,xml] ----- - - - - 24 - 7 - system - 8 - system - connect - - - ----- - - -=== GetByAllParams - получает запись Permission - -Принимает параметры - -- _objectId_ (long) - идентификатор объекта, для которого проверяются права -- _objectType_ (String) - тип объекта -- _subjectId_ (String) - идентификатор предмета применяемого права -- _subjectType_ (String) - тип предмета -- _action_ (String) - тип действия, необязательный по умолчанию проставляется значение _default_ - -Пример запроса: -[source,xml] ----- - - - - - 7 - system - 8 - system - - connect - - - ----- - -Пример ответа: -[source,xml] ----- - - - - 24 - 7 - system - 8 - system - connect - - - ----- - - -=== Create - создаёт запись Permission - -Принимает параметры - -- _objectId_ (long) - идентификатор объекта, для которого проверяются права -- _objectType_ (String) - тип объекта -- _subjectId_ (String) - идентификатор предмета применяемого права -- _subjectType_ (String) - тип предмета -- _action_ (String) - тип действия, необязательный по умолчанию проставляется значение _default_ - -Пример запроса: -[source,xml] ----- - - - - - 7 - account - 1234 - system-group - - send - - - ----- - -Пример ответа: -[source,xml] ----- - - - - 25 - 7 - account - 1234 - system-group - send - - - ----- - -В случае если запись уже создана возвращается ошибка -[source,xml] ----- - - - - soap:Server - org.hibernate.exception.ConstraintViolationException: could not execute statement - - - ----- - -=== Update - изменяет запись Permission - -Принимает параметры - -- _permissionId_ (long) - идентификатор объекта permission -- _objectId_ (long) - идентификатор объекта, для которого проверяются права -- _objectType_ (String) - тип объекта, данный параметр соответствует проектной терминалогии: system, system-group -- _subjectId_ (String) - идентификатор предмета применяемого права -- _subjectType_ (String) - тип предмета -- _action_ (String) - тип действия, необязательный по умолчанию проставляется значение _default_ - -Пример запроса: -[source,xml] ----- - - - - - 23 - 8 - account - 1234 - system-group - - send - - - ----- - - -Пример ответа: -[source,xml] ----- - - - - 23 - 8 - account - 1234 - system-group - send - - - ----- - -В случае если запись не найдена возвращается ошибка -[source,xml] ----- - - - - soap:Server - No entity found for query - - - ----- - - -=== _Delete_ - удаляет запись _Permission_ - -Принимает параметры - -- _objectId_ (long) - идентификатор объекта, для которого проверяются права -- _objectType_ (String) - тип объекта -- _subjectId_ (String) - идентификатор предмета применяемого права -- _subjectType_ (String) - тип предмета -- _action_ (String) - тип действия, необязательный по умолчанию проставляется значение _default_ - -Пример запроса: -[source,xml] ----- - - - - - 7 - account - 1234 - system-group - - send - - - ----- - -Пример ответа: -[source,xml] ----- - - - true - - ----- - -В случае если запись не найдена возвращается ошибка -[source,xml] ----- - - - - soap:Server - No entity found for query - - - ----- - diff --git a/documentation/core/route_packet.png b/documentation/core/route_packet.png deleted file mode 100644 index bd6ad04..0000000 Binary files a/documentation/core/route_packet.png and /dev/null differ diff --git a/documentation/core/schema/Schema.adoc b/documentation/core/schema/Schema.adoc deleted file mode 100644 index 440476b..0000000 --- a/documentation/core/schema/Schema.adoc +++ /dev/null @@ -1,462 +0,0 @@ -= Sсhema - -Есть три типа ресурсов, которые можно загружать в шину и использовать в маршрутах: - -. Валидационные типы ресурсов (нпрм xsd). Необходимы для валидации сообщения на соответствие той или иной схеме. -. Трансформационные типы ресурсов (нпрм xslt, amd). Необходимы для трасформации сообщений из одной схемы в другую. -. Ресурсы используемые для генерации сервисов (нпрм wsdl). Необходимы для поднятия сервиса на шине. - -Для загрузки трансформационных ресурсов необходимо указывать, является ли данный трансформатор конвертором и схему-источник и схему-результат для неявного преобразования сообщения(конвертор может быть один и только один для пары: схема источник, схема результат) -Схему-источник и схему-результат необходимо указывать только для конверторов, используемых в неявных преобразованиях - -Желательно указывать или определять схему для коннектора, если предполагается использовать функционал неявных преобразований. Неявное преобразование будет работать, если: - -- в заголовке указана схема-источник -- в заголовке указана схема-приемник -- в реестре есть конвертор для этой пары схем - -Указание схемы может попадать в заголовок неявно (из свойств коннектора или из тела сообщения) или явно через медиатор. - -== Схема работы с ресурсами. - -Сначала загружаем сам ресурс в шину, который мы будем использовать в маршрутах. - -Загружаем ресурс и получаем id, с помощью которого можно и _нужно_ добавить служебную информацию! -Также можно перезагрузить данный ресурс и удалять его из шины. - -Также можно загружать служебную информацию, такую как название ресурса, его расширение и т д. -Выгружать весь список ресурсов, и по отдельности выкачивать сам ресурс для анализа. -Также использовать различные сортировки для поиска определенного типа ресурс. - -== Руководство по загрузке ресурсов в шину. - -*LoadResource.* - -Для загрузки ресурса в шину нужно использовать метод loadResource. - -параметры: - -- resourceValue - сам ресурс, в формате base64 - -[source,xml] ----- - - - - - - - ----- - -ответ -[source,xml] ----- - - - 1 - - ----- - -*GetResource.* - -Для выгрузки заранее загруженного ресурса в шину нужно использовать метод getResource. - -параметры: - -- getResourceRequest - id ресурса, который вернулся при вызове метода LoadResource - -[source,xml] ----- - - - - 1 - - ----- - -ответ - -параметры: - -- id - это id ресурса -- createdDate - дата создания ресурса -- createdBy - логин, загрузивший ресурс в шину -- editedDate - дата перезагрузки ресурса -- editedBy - логин, перезагрузивший ресурс в шине -- resourceValue - сам ресурс, в формате base64 - -[source,xml] ----- - - - - 1 - 12/15/20, 1:11 AM - 12/15/20, 1:11 AM - 12/15/20, 1:18 AM - 12/15/20, 1:18 AM - - - - ----- - -*ReloadResource.* - -Для перезагрузки ресурса в шину есть метод reloadResource. - -параметры: - -- id - id ресурса, который вернулся при вызове метода LoadResource -- resourceValue - сам ресурс, в формате base64 - -[source,xml] ----- - - - - 1 - - - - ----- - -ответ -[source,xml] ----- - - - 1 - - ----- - -*RemoveResource.* - -Для удаления ресурса в шине есть метод removeResource. - -параметры: - -- id - id ресурса, который вернулся при вызове метода LoadResource - -[source,xml] ----- - - - - 1 - - ----- - -ответ -[source,xml] ----- - - - 1 - - ----- - -*LoadResourceInfo.* - -Для загрузки мета информации ресурса в шине есть метод loadResourceInfo. - -параметры: - -- idResource - id ресурса, который вернулся при вызове метода LoadResource -- name - имя ресурса вместе с расширением -- version - версия ресурса -- description - описание ресурса -- convertor - является ли ресурс конвертором из одной схемы в другую -- namespace - входное пространство имен -- namespaceOut - выходное пространство имен, используется для трансформаций из одной схемы в другую - -[source,xml] ----- - - - - lama.xsd - 1 - 1.0 - lama test - false - http:lama.xsd - l - - - ----- - -ответ -[source,xml] ----- - - - 1 - - ----- - -*GetResourceInfo.* - -Для получения мета информации ресурса в шине есть метод getResourceInfo. - -параметры: - -- getResourceInfoRequest - id мета информации ресурса, который вернулся при вызове метода LoadResourceInfo - - -[source,xml] ----- - - - - 1 - - ----- - -ответ - -параметры: - -- id - id мета информации ресурса, который вернулся при вызове метода LoadResourceInfo -- idResource - id ресурса, который вернулся при вызове метода LoadResource -- name - имя ресурса вместе с расширением -- version - версия ресурса -- description - описание ресурса -- convertor - является ли ресурс конвертором из одной схемы в другую -- namespace - входное пространство имен -- namespaceOut - выходное пространство имен, используется для трансформаций из одной схемы в другую -- createdDate - дата создания мета информации ресурса -- createdBy - логин, загрузивший мета информацию ресурса в шину -- editedDate - дата перезагрузки мета информации ресурса -- editedBy - логин, перезагрузивший мета информацию ресурса в шине - -[source,xml] ----- - - - - 14 - lama.xsd - 14 - 1.0 - lama test - false - http:lama.xsd - false - ? - 12/15/20, 1:33 AM - ? - 12/15/20, 1:35 AM - - - ----- - -*EditResourceInfo.* - -Для корректирования мета информации ресурса в шине есть метод еditResourceInfo. - -параметры: - -- id - id мета информации ресурса, который вернулся при вызове метода LoadResourceInfo -- idResource - id ресурса, который вернулся при вызове метода LoadResource -- name - имя ресурса вместе с расширением -- version - версия ресурса -- description - описание ресурса -- convertor - является ли ресурс конвертором из одной схемы в другую -- namespace - входное пространство имен -- namespaceOut - выходное пространство имен, используется для трансформаций из одной схемы в другую - -[source,xml] ----- - - - - 1 - lama.xsd - 1 - 1.0 - lama test - false - http:lama.xsd - l - - - ----- - -ответ - -[source,xml] ----- - - - 14 - - ----- - -*RemoveResourceInfo.* - -Для удаления мета информации ресурса в шине есть метод removeResourceInfo. - -параметры: - -- id - id мета информации ресурса, который вернулся при вызове метода LoadResourceInfo - -[source,xml] ----- - - - - 1 - - ----- - -ответ - -[source,xml] ----- - - - 1 - - ----- - -*GetResourceInfoList.* - -Для получения списка мета информации ресурсов в шине есть метод getResourceInfoList. - -[source,xml] ----- - - - - - - ----- - -ответ - -[source,xml] ----- - - - - - 1 - lama.xsd - 1 - 1.0 - lama test - false - http:lama.xsd - l - ? - 12/14/20, 10:00 PM - - - - ----- - -*GetResourceInfoListByName.* - -Для получения списка мета информации ресурсов по имени ресурса в шине есть метод getResourceInfoListByName. - -параметры: - -- name - часть имени мета информации ресурса - -[source,xml] ----- - - - - - .xsd - - - ----- - -ответ - -[source,xml] ----- - - - - - 1 - lama.xsd - 1 - 1.0 - lama test - false - http:lama.xsd - l - ? - 12/14/20, 10:00 PM - - - - ----- - -*GetResourceInfoListByNamespace.* - -Для получения списка мета информации ресурсов по namespace ресурса в шине есть метод getResourceInfoListByNamespace. - -параметры: - -- namespace - часть namespace мета информации ресурса - -[source,xml] ----- - - - - - lama - - - ----- - -ответ - -[source,xml] ----- - - - - - 1 - lama.xsd - 1 - 1.0 - lama test - false - http:lama.xsd - l - ? - 12/14/20, 10:00 PM - - - - ----- \ No newline at end of file diff --git a/documentation/core/screenshots/screenshot_artemis_1.png b/documentation/core/screenshots/screenshot_artemis_1.png deleted file mode 100644 index ecc4260..0000000 Binary files a/documentation/core/screenshots/screenshot_artemis_1.png and /dev/null differ diff --git a/documentation/core/screenshots/screenshot_artemis_10.png b/documentation/core/screenshots/screenshot_artemis_10.png deleted file mode 100644 index df0962f..0000000 Binary files a/documentation/core/screenshots/screenshot_artemis_10.png and /dev/null differ diff --git a/documentation/core/screenshots/screenshot_artemis_2.png b/documentation/core/screenshots/screenshot_artemis_2.png deleted file mode 100644 index 0c36f8c..0000000 Binary files a/documentation/core/screenshots/screenshot_artemis_2.png and /dev/null differ diff --git a/documentation/core/screenshots/screenshot_artemis_3.png b/documentation/core/screenshots/screenshot_artemis_3.png deleted file mode 100644 index 7e20da4..0000000 Binary files a/documentation/core/screenshots/screenshot_artemis_3.png and /dev/null differ diff --git a/documentation/core/screenshots/screenshot_artemis_4.png b/documentation/core/screenshots/screenshot_artemis_4.png deleted file mode 100644 index d84f7f8..0000000 Binary files a/documentation/core/screenshots/screenshot_artemis_4.png and /dev/null differ diff --git a/documentation/core/screenshots/screenshot_artemis_5.png b/documentation/core/screenshots/screenshot_artemis_5.png deleted file mode 100644 index 41f337a..0000000 Binary files a/documentation/core/screenshots/screenshot_artemis_5.png and /dev/null differ diff --git a/documentation/core/screenshots/screenshot_artemis_6.png b/documentation/core/screenshots/screenshot_artemis_6.png deleted file mode 100644 index 61631e8..0000000 Binary files a/documentation/core/screenshots/screenshot_artemis_6.png and /dev/null differ diff --git a/documentation/core/screenshots/screenshot_artemis_7.png b/documentation/core/screenshots/screenshot_artemis_7.png deleted file mode 100644 index db3c894..0000000 Binary files a/documentation/core/screenshots/screenshot_artemis_7.png and /dev/null differ diff --git a/documentation/core/screenshots/screenshot_artemis_8.png b/documentation/core/screenshots/screenshot_artemis_8.png deleted file mode 100644 index 07bbebf..0000000 Binary files a/documentation/core/screenshots/screenshot_artemis_8.png and /dev/null differ diff --git a/documentation/core/screenshots/screenshot_artemis_9.png b/documentation/core/screenshots/screenshot_artemis_9.png deleted file mode 100644 index 4d9e1f3..0000000 Binary files a/documentation/core/screenshots/screenshot_artemis_9.png and /dev/null differ diff --git a/documentation/core/screenshots/screenshot_hawtio_1.png b/documentation/core/screenshots/screenshot_hawtio_1.png deleted file mode 100644 index b13d15e..0000000 Binary files a/documentation/core/screenshots/screenshot_hawtio_1.png and /dev/null differ diff --git a/documentation/core/screenshots/screenshot_hawtio_2.png b/documentation/core/screenshots/screenshot_hawtio_2.png deleted file mode 100644 index 0ec0442..0000000 Binary files a/documentation/core/screenshots/screenshot_hawtio_2.png and /dev/null differ diff --git a/documentation/core/screenshots/screenshot_hawtio_3.png b/documentation/core/screenshots/screenshot_hawtio_3.png deleted file mode 100644 index d753892..0000000 Binary files a/documentation/core/screenshots/screenshot_hawtio_3.png and /dev/null differ diff --git a/documentation/core/screenshots/screenshot_hawtio_4.png b/documentation/core/screenshots/screenshot_hawtio_4.png deleted file mode 100644 index 62905ba..0000000 Binary files a/documentation/core/screenshots/screenshot_hawtio_4.png and /dev/null differ diff --git a/documentation/core/screenshots/screenshot_hawtio_5.png b/documentation/core/screenshots/screenshot_hawtio_5.png deleted file mode 100644 index 62905ba..0000000 Binary files a/documentation/core/screenshots/screenshot_hawtio_5.png and /dev/null differ diff --git a/documentation/core/screenshots/screenshot_hawtio_6.png b/documentation/core/screenshots/screenshot_hawtio_6.png deleted file mode 100644 index 18d9a7c..0000000 Binary files a/documentation/core/screenshots/screenshot_hawtio_6.png and /dev/null differ diff --git a/documentation/core/screenshots/screenshot_hawtio_7.png b/documentation/core/screenshots/screenshot_hawtio_7.png deleted file mode 100644 index dcbad9b..0000000 Binary files a/documentation/core/screenshots/screenshot_hawtio_7.png and /dev/null differ diff --git a/documentation/core/system-managment/Users-manual-System-management.adoc b/documentation/core/system-managment/Users-manual-System-management.adoc deleted file mode 100644 index da173ff..0000000 --- a/documentation/core/system-managment/Users-manual-System-management.adoc +++ /dev/null @@ -1,836 +0,0 @@ -= Руководство по управлению коннекторами и профилями в шине. - -_Профиль(profile)_ - это описание внешней системы в шине.(Например s1). - -_Мостовой профиль(bridge-profile)_ - это профиль на другой стороне шины, ведущий через мост в профиль. -(Например s1) - -_Коннектор(connector)_ - это связь между интерфейсом, через который может работать система, и профилем.(Например uniform-service, nsi) - -_Доступ(permission)_ - это разрешение на взаимодействие двух систем.(Например для того чтобы система s1 смогла отправить сообщение s2)(/permission-management) - -_Учетная запись(account)_ - это учетная запись системы для взаимодействия с шиной. -Для каждой системы должна быть учетная запись для возможности отправления сообщений в шину. -Также есть учетные записи для возможности взаимодействия с управленческим слоем(т. е. для того чтобы управлять коннекторами/профилями/учетными записями/топиками нужна учетная запись с соответствующими правами)(/basic-auth-management) - -Коннекторы делятся на входящие и исходящие(in, out), которые отвечают за отправку сообщения в определенный интерфейс и на получение ответа из определенного интерфейса соответственно. -Например, для того чтобы иметь возможность отправить сообщение в soap нужно создать коннектор uniform-service-in-connector, а для того чтобы получить сообщение из soap нужно создать коннектор uniform-service-out-connector. - -По адресу _/system-management-service_ находится сам сервис управления коннекторами и профилями в шине. - -Для работы внешней системы в шине нужно сначала создать профиль данной системы в шине, потом добавлять к нему необходимые коннекторы и пробрасывать его в необходимые шины. - -=== Управление профилями - -*СreateProfile.* - -Для создания профиля системы нужно вызвать метод createProfile, где вместо “system_uuid” нужно подставить uuid системы, вместо “system_name” - имя системы, “description” описание системы: - -[source,xml] ----- - - - - - {{system_uuid}} - {{system_uuid}} - - {{description}} - - - - ----- - -Где ответом будет (“true” - если профиль успешно создался, ошибка и ее описание): - -[source,xml] ----- - - - true - - ----- - -*GetProfile.* - -Проверить созданный профиль можно с помощью метода getProfile, где вместо “system_uuid” нужно подставить uuid системы: - -[source,xml] ----- - - - - - {{system_uuid}} - - - ----- - -Где ответом будет (профиль со всеми зависимостями, либо ошибка и ее описание): - -[source,xml] ----- - - - - w6 - w6 - description - 2020-01-22+03:00 - System - false - ACTIVE - - - - - ----- - -*GetProfiles* - -Получить список профилей, зарегистрированных в шине, можно с помощью метода getProfiles: - -[source,xml] ----- - - - - - - ----- - -Где ответом будет (список профилей со всеми зависимостями, либо ошибка и ее описание): - -[source,xml] ----- - - - - - w6 - w6 - description - 2020-01-22+03:00 - System - false - ACTIVE - - - - - - ----- - -*StopProfile* - -Остановить профиль и все его зависимости можно с помощью метода stopProfile, где вместо “system_uuid” нужно подставить uuid системы: - -[source,xml] ----- - - - - - {{system_uuid}} - - - ----- - -Где ответом будет (“true” - если профиль и его зависимости успешно остановились, ошибка и ее описание): - -[source,xml] ----- - - - true - - ----- - -*StartProfile* - -Запустить профиль и все его зависимости можно с помощью метода startProfile, где вместо “system_uuid” нужно подставить uuid системы: - -[source,xml] ----- - - - - - {{system_uuid}} - - - ----- - -Где ответом будет (“true” - если профиль успешно запустился, ошибка и ее описание): - -[source,xml] ----- - - - true - - ----- - -*RemoveProfile* - -Удалить профиль и все его зависимости можно с помощью метода removeProfile, где вместо “system_uuid” нужно подставить uuid системы(ВНИМАНИЕ! -При удалении профиля также удаляются все связанные с ним коннекторы): - -[source,xml] ----- - - - - - {{system_uuid}} - - - ----- - -Где ответом будет (“true” - если профиль и его зависимости успешно удалился, ошибка и ее описание): - -[source,xml] ----- - - - true - - ----- - -=== Управление коннекторами - -*GetTemplates* - -Для создания коннектора в шине нужно получить список шаблонов(требуются для создания коннекторов) методом getTemplates: - -[source,xml] ----- - - - - - - ----- - -Где ответом будет (список шаблонов с параметрами): - -[source,xml] ----- - - - - - - - - - - ----- - -*GetTemplate* - -Для создания коннектора в шине нужно получить список шаблонов(требуются для создания коннекторов) методом getTemplate, где “template_name” имя шаблона по которому будет сделан коннектор: - -[source,xml] ----- - - - - - {{template_name}} - - - ----- - -Где ответом будет (шаблон с параметрами): - -[source,xml] ----- - - - - - ----- - -*СreateConnector* - -Для создания коннектора в шине нужно вызвать метод createConnector, где templateName - это имя шаблона, полученное из метода getTemplates, system_uuid - это uuid профиля, зарегистрированного в системе ранее, также нужно заполнить список параметров необходимый для создания коннектора(ВНИМАНИЕ! если не заполнить список параметров, то установятся значения по умолчанию) : - -[source,xml] ----- - - - - - {{template_name}} - {{system_uuid}} - - - - - - ----- - -Где ответом будет (“true” - если коннектор успешно создался, ошибка и ее описание): - -[source,xml] ----- - - - true - - ----- - -*GetConnectors* - -Можно просматривать список подключенных коннекторов в шине методом getConnectors: - -[source,xml] ----- - - - - - - ----- - -Где ответом будет (список коннкторов с параметрами): - -[source,xml] ----- - - - - - nsi-in-connector-w6 - ACTIVE - - - - - ----- - -*StartConnector* - -Запустить коннектор можно с помощью метода startConnector, где вместо “system_uuid” нужно подставить uuid системы, “template_name” это имя шаблона: - -[source,xml] ----- - - - - - {{template_name}} - {{system_uuid}} - - - ----- - -Где ответом будет (“true” - если коннектор успешно запустился, ошибка и ее описание): - -[source,xml] ----- - - - true - - ----- - -*StopConnector* - -Остановить коннектор можно с помощью метода stopConnector, где вместо “system_uuid” нужно подставить uuid системы, “template_name” это имя шаблона: - -[source,xml] ----- - - - - - {{template_name}} - {{system_uuid}} - - - ----- - -Где ответом будет (“true” - если коннектор успешно остановилась, ошибка и ее описание): - -[source,xml] ----- - - - true - - ----- - -*RemoveConnector* - -Удалить коннектор можно с помощью метода removeConnector, где вместо “system_uuid” нужно подставить uuid системы, “template_name” это имя шаблона: - -[source,xml] ----- - - - - - {{template_name}} - {{system_uuid}} - - - ----- - -Где ответом будет (“true” - если коннектор успешно удалился, ошибка и ее описание): - -[source,xml] ----- - - - true - - ----- - -=== Управление мостовыми профилями - -*GetListEsb* - -Для получения списка подключенных шин можно с помощью метода getListEsb: - -[source,xml] ----- - - - - - - ----- - -Где ответом будет (список подключенных шин, ошибка и ее описание): - -[source,xml] ----- - - - - test1 - - - ----- - -*CreateBridgeProfile* - -Создать профиль, ведущий на мост, можно с помощью метода createBridgeProfile, где “system_uuid” uuid системы, “esb_name” имя подключенной шины: - -[source,xml] ----- - - - - - {{system_uuid}} - {{system_uuid}} - {{esb_name}} - - - ----- - -Где ответом будет (“true” - если профиль, ведущий на мост, успешно создался, ошибка и ее описание): - -[source,xml] ----- - - - true - - ----- - -*StopBridgeProfile* - -Остановить профиль, ведущий на мост, можно с помощью метода stopBridgeProfile, где “system_uuid” uuid системы, “esb_name” имя подключенной шины: - -[source,xml] ----- - - - - - {{system_uuid}} - {{system_uuid}} - {{esb_name}} - - - ----- - -Где ответом будет (“true” - если профиль, ведущий на мост, успешно остановился, ошибка и ее описание): - -[source,xml] ----- - - - true - - ----- - -*StartBridgeProfile* - -Запустить профиль, ведущий на мост, можно с помощью метода startBridgeProfile, где “system_uuid” uuid системы, “esb_name” имя подключенной шины: - -[source,xml] ----- - - - - - {{system_uuid}} - {{system_uuid}} - {{esb_name}} - - - ----- - -Где ответом будет (“true” - если профиль, ведущий на мост, успешно запустился, ошибка и ее описание): - -[source,xml] ----- - - - true - - ----- - -*GetBridgeProfile* - -Получить профиль, ведущий на мост, можно с помощью метода getBridgeProfile, где “system_uuid” uuid системы, “esb_name” имя подключенной шины: - -[source,xml] ----- - - - - - {{system_uuid}} - {{system_uuid}} - {{esb_name}} - - - ----- - -Где ответом будет (профиль, ведущий на мост, пустой ответ): - -[source,xml] ----- - - - - w6 - ACTIVE - test1 - - - ----- - -*RemoveBridgeProfile* - -Удалить профиль, ведущий на мост, можно с помощью метода removeBridgeProfile, где “system_uuid” uuid системы, “esb_name” имя подключенной шины: - -[source,xml] ----- - - - - - {{system_uuid}} - {{system_uuid}} - {{esb_name}} - - - ----- - -Где ответом будет (“true” - если профиль, ведущий на мост, успешно удален, ошибка и ее описание): - -[source,xml] ----- - - - true - - ----- - -*GetBridgeProfiles* - -Для получения списка профилей, ведущих на мост, можно использовать метод getBridgeProfiles:(ВНИМАНИЕ! запрос покажет список проброшенных профилей на ТЕКУЩЕЙ шине) - -[source,xml] ----- - - - - - - ----- - -Где ответом будет (список профиль, ведущих на мост, пустой ответ): - -[source,xml] ----- - - - - - w6 - ACTIVE - test1 - - - - ----- - -=== Управление доступами - -*CreatePermission* - -Создать доступ одной системы к другой, можно с помощью метода createPermission, где “objectUuid” uuid системы, которой нужно дать доступ, “subjectUuid” - uuid системы, к которой нужно дать доступ: - -[source,xml] ----- - - - - - {{objectUuid}} - {{subjectUuid}} - - - ----- - -Где ответом будет (“true” - если доступ, успешно создался, ошибка и ее описание): - -[source,xml] ----- - - - true - - ----- - -*RemovePermission* - -Удалить доступ одной системы к другой, можно с помощью метода removePermission, где “objectUuid” uuid системы, которой нужно дать доступ, “subjectUuid” - uuid системы, к которой нужно дать доступ: - -[source,xml] ----- - - - - - {{objectUuid}} - {{subjectUuid}} - - - ----- - -Где ответом будет (“true” - если доступ, успешно удалился, ошибка и ее описание): - -[source,xml] ----- - - - true - - ----- - -*GetPermissionsByObject* - -Получить список систем, доступ к которым от данной системы разрешен, можно с помощью метода getPermissionByObject, где “objectUuid” uuid системы: - -[source,xml] ----- - - - - - {{objectUuid}} - - - ----- - -Где ответом будет (список систем, которым данная система может отправлять сообщения, ошибка и ее описание): - -[source,xml] ----- - - - - - r2 - - - active - - - - ----- - -*GetPermissionsBySubject* - -Получить список систем, доступ которым разрешен к данной системе, можно с помощью метода getPermissionBySubject, где “subjectUuid” uuid системы: - -[source,xml] ----- - - - - - {{subjectUuid}} - - - ----- - -Где ответом будет (список систем, для которых данная система доступна для отправки сообщений, ошибка и ее описание): - -[source,xml] ----- - - - - - r2 - - - - ----- - -*CreatePermissionForObjectRequest* - -Создать сразу несколько доступов, которым разрешено отправлять сообщения от данной системы, можно с помощью метода сreatePermissionForObjectRequest, где “objectUuid” это uuid системы, от которой буду исходить сообщения, ‘“subjectUuid1”, “subjectUuid2” и т д, это uuid систем, которым будут отправлять сообщения: - -[source,xml] ----- - - - - - {{objectUuid}} - - {{subjectUuid1}} - {{subjectUuid2}} - - - ----- - -Где ответом будет (“true” - если доступа, успешно создались, ошибка и ее описание): - -[source,xml] ----- - - - true - - ----- - -*CreatePermissionForSubjectRequest* - -Создать сразу несколько доступов, которым разрешено отправлять сообщения в данную систему, можно с помощью метода сreatePermissionForSubjectRequest, где “objectUuid1”, “objectUuid2” и т д - это uuid систем, от которых буду исходить сообщения, ‘“subjectUuid” - это uuid системы, которой будут отправлять сообщения: - -[source,xml] ----- - - - - - - {{objectUuid1}} - {{objectUuid2}} - {{subjectUuid}} - - - ----- - -Где ответом будет (“true” - если доступа, успешно создались, ошибка и ее описание): - -[source,xml] ----- - - - true - - ----- diff --git a/documentation/core/topic/Scheme_of_work_notifications(events).png b/documentation/core/topic/Scheme_of_work_notifications(events).png deleted file mode 100644 index 615c61f..0000000 Binary files a/documentation/core/topic/Scheme_of_work_notifications(events).png and /dev/null differ diff --git a/documentation/core/topic/Topic-management-Rest-service.adoc b/documentation/core/topic/Topic-management-Rest-service.adoc deleted file mode 100644 index 33b82fb..0000000 --- a/documentation/core/topic/Topic-management-Rest-service.adoc +++ /dev/null @@ -1,555 +0,0 @@ -= Rest сервис Topic-management - -=== Rest сервис для работы с топиками. - -Сервис состоит из 2-х контекстов: - -- _topic-management_ - управление топиками (создание/изменение/удаление) -- _topic-subscription_ - клиентский сервис подписки и публикации сообщения - -При смене контекста в конфигурационных файлах требуется перераздать права на данный сервис. - -Схема работы подписок - -image::Topic_publish_diagram.png[] - -Схема работы нотификаций - -image::Scheme_of_work_notifications(events).png[] - -=== Права - -Право доступа в сервис _topic-management_ - -Для доступа к сервису _topic-management_ у аккаунта должно быть право доступа в данный сервис. - -По умолчанию право на доступ к сервису есть у пользователя _admin_. - -Используя данного пользователя в сервисе _permission-management_ можно раздать права на аккаунты систем. - -Параметры для выдачи аккаунту прав на сервис: - -- _objectId_: идентификатор учётной записи -- _objectType_: account -- _subjectId_: topic-management -- _subjectType_: service - -Право manage сервиса _topic-subscription_ - -Для доступа к менеджерским функциям сервиса _topic-subscription_ у аккаунта должно быть право manage - данное право открывает доступ к управлению подписками. - -Функционал управления подписками реализован в методах _subscribe_ и _unsubscribe_, пример использования приведён в подпунктах “Массовая обработка при наличии права manage для данного сервиса”. - -Параметры для выдачи аккаунту права _manage_: - -- _objectId_: идентификатор учётной записи -- _objectType_: account -- _subjectId_: topic-subscription -- _subjectType_: service -- _action_: manage - -=== Конфигурационные файлы - -Конфигурационные файлы по умолчанию хранятся в папке сервера \etc\ - -- _ru.entaxy.esb.system.event.handler.cfg_ - -[source,properties] ----- -# максимальное колчичество попыток отправить сообщение в очередь -# почитать подробнее можно в https://camel.apache.org/components/latest/eips/dead-letter-channel.html#deadLetterChannel-Redelivery -redelivery.maximumRedeliveries=-1 -# время между попытками отправить сообщение в очередь -redelivery.redeliveryDelay=5000 - -#cron - по умолчанию запускается каждые 00:00:00, -#cron выражение использует знак "+" как разделитель для модуля quartz2l -quartz.job.clean.cron=0+0+0+*+*+?+* ----- - -- _ru.entaxy.esb.system.event.rest.cfg_ - -[source,properties] ----- -service.host=http://0.0.0.0 - -service.port.management=9090 -#Рутовый контекст управляющего сервиса, при изменении требуется перераздать права для данного сервиса -service.root.path.management=/topic-management - -service.port.subscription=9092 -#Рутовый контекст клиентского сервиса, при изменении требуется перераздать права для данного сервиса -service.root.path.subscription=/topic-subscription ----- - -=== Методы topic-management: - -- _create_ - создать топик -При создании и изменении топика, есть возможность передать списки систем, которым доступна подписка или публикация в данном топике. - -Запрос: - -_POST server:9090/topic-management/create_ - -Тело -[source,json] ----- -{ - "topicName": "boomNews", - "possibleSubscribers" : ["systemUuid1", "systemUuid2"], - "possiblePublishers" : ["systemUuid3", "systemUuid4"] -} ----- - -Ответ: - -Статус 201 - -Тело -[source,json] ----- -{ - "title": "Topic created", - "topicName": "", - "subscriberErrors": { - "systemNotFound": [ - "" - ] - }, - "publisherErrors": { - "systemNotFound": [] - } -} ----- - -- update - изменить топик (название не меняется, так как на него завязана сама очередь в брокере) - -Запрос: - -_POST server:9090/topic-management/update_ - -Тело - -[source,json] ----- -{ - "topicName": "boomNews", - "possibleSubscribers" : ["systemUuid1", "systemUuid2"], - "possiblePublishers" : ["systemUuid3", "systemUuid4"] -} ----- - -Ответ: - -Статус 201 - -Тело -[source,json] ----- -{ - "title": "Topic updated", - "topicName": "", - "subscriberErrors": { - "systemNotFound": [ - "" - ] - }, - "publisherErrors": { - "systemNotFound": [] - } -} ----- - -- delete - топик помечается как удалённый - -Запрос: - -_POST server:9090/topic-management/delete_ - -Тело -[source,json] ----- -{ - "topicName": "boomNews" -} ----- - -Ответ: - -Статус 200 - -Тело -[source,json] ----- -{ - "title": "Topic deleted", - "topicName": "" -} ----- - - -- clean - очистка хранилища топиков - -Окончательное удаление топиков, помеченных как удалённые. - -Запрос: - -_POST server:9090/topic-management/clean_ - -Ответ: - -Статус 200 - -Тело -[source,json] ----- -{ - "title": "Cleaned", - "topicDeleted": "" -} ----- - - -=== Методы topic-subscription: - -- _subscribe_ - подписаться на топик - -Запрос: - -_POST server:9090/topic-subscription/subscribe_ - -Тело -[source,json] ----- -{ - "topicName": "boomNews", - "subscriptionType": "PUSH" -} ----- - -Ответ: - -Статус 201 - -Тело -[source,json] ----- -{ - "title": "Subscription created", - "topicName": "", - "systemName": "", - "subscriptionType": "" -} ----- - -=== Массовая обработка при наличии права manage для данного сервиса. - -- _subscribe_ - подписаться на топик - -Запрос: - -_POST server:9092/topic-subscription/subscribe_ - -Тело -[source,json] ----- -{ - "topicName": "boomNews", - "systemUuids": [ - { - "systemUuid": "NNNNNNNN-NNNN-NNNN-NNNN-NNNNNNNNNNNN", - "subscriptionType": "PUSH" - }, - { - "systemUuid": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", - "subscriptionType": "PULL" - }, - { - "systemUuid": "YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY", - "subscriptionType": "PULL" - } - ] -} ----- - -Ответ: - -Статус 200 - -Тело -[source,json] ----- -[ - { - "title": "Internal Server Error", - "detail": "System not found NNNNNNNN-NNNN-NNNN-NNNN-NNNNNNNNNNNN", - "reason": "javax.persistence.NoResultException: No entity found for query" - }, - { - "title": "Subscription created", - "topicName": "ooooo111-ff6e-4219-a878-bff120c495f1", - "systemUUID": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", - "subscriptionType": "PULL" - }, - { - "title": "Forbidden", - "detail": "No permission to subscribe for system YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY" - } -] ----- - - -- _unsubscribe_ - отписаться от топика - -Запрос: - -_POST server:9090/topic-subscription/unsubscribe_ - -Тело -[source,json] ----- -{ - "topicName": "boomNews" -} ----- - -Ответ: - -Статус 200 - -Тело -[source,json] ----- -{ - "title": "Subscription deleted", - "topicName": "", - "systemName": "" -} ----- - -=== Массовая обработка при наличии права manage для данного сервиса. - -Запрос: - -_POST server:9092/topic-subscription/unsubscribe_ - -Тело -[source,json] ----- -{ - "topicName": "boomNews", - "systemUuids": [ - { - "systemUuid":"NNNNNNNN-NNNN-NNNN-NNNN-NNNNNNNNNNNN", - "subscriptionType": "PUSH" - }, - { - "systemUuid": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", - "subscriptionType": "PULL" - }, - { - "systemUuid": "YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY", - "subscriptionType": "PULL" - } - ] -} ----- - -Ответ: - -Статус 200 - -Тело -[source,json] ----- -[ - { - "title": "Internal Server Error", - "detail": "System not found NNNNNNNN-NNNN-NNNN-NNNN-NNNNNNNNNNNN", - "reason": "javax.persistence.NoResultException: No entity found for query" - }, - { - "title": "Subscription deleted", - "topicName": "ooooo111-ff6e-4219-a878-bff120c495f1", - "systemUUID": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" - }, - { - "title": "Subscription not found", - "topicName": "ooooo111-ff6e-4219-a878-bff120c495f1", - "systemUUID": "YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY" - } -] ----- - -- _publish_ - опубликовать событие - -Запрос: - -_POST server:9090/topic-subscription/publish_ - -Тело -[source,json] ----- -{ - "topicName": "boomNews", "message": "messageText2" -} ----- - - Ответ: - Статус 200 - Тело - { - "title": "Message published", - "topicName": "" - } - -=== Примеры ответов при ошибке - -- _Передан некорректный JSON или логин не определён_ - -Статус 400 - -Тело -[source,json] ----- -{ - "title": "Incorrect input parameters", - "detail": "Cannot parse incoming JSON or login/system not defined" -} ----- - -- _Подписка не найдена_ - -Статус 404 - -Тело -[source,json] ----- -{ - "title": "Subscription not found", - "topicName": "${exchangeProperty.topicName}", - "systemUUID": "${header.X-SystemUuid}" -} ----- - -- _Топик не зарегистрирован_ - -Статус 400 - -Тело -[source,json] ----- -{ - "title": "Topic not registered", - "topicName": "${exchangeProperty.topicName}" -} ----- - -- _Система не найдена_ - -Статус 500 - -Тело -[source,json] ----- -{ - "title": "Internal Server Error", - "detail": "System not found ${header.X-SystemUuid}", - "reason": "${exception.stacktrace}" -} ----- - -- _Неизвестный тип подписки_ - -Статус 500 - -Тело -[source,json] ----- -{ - "title": "Internal Server Error", - "detail": "Unknown subscription type ${exchangeProperty.subscriptionType}", - "reason": "${exception.stacktrace}" -} ----- - -- _Нет прав на выполнение запрошенной операции_ - -Статус 403 - -Тело -[source,json] ----- -{ - "title": "Forbidden", - "detail": "No permission to subscribe" -} ----- - -- _Неизвестная ошибка_ - -Статус 500 - -Тело -[source,json] ----- -{ - "title": "Internal Server Error", - "detail": "Unknown exception", - "reason": "${exception.stacktrace}" -} ----- - -== Работа модуля топиков в кластере - -=== Подписки - -*PULL подписки не реализованы!* - -Для реализации подписки используются _durable shareable_ подписчики _Apache Artemis_ топиков, а для доставки сообщений из топиков создаются специальные маршруты отправляющие сообщения в подписанную систему(PUSH-подписка). При работе в кластере системой создаются дублирующие маршруты на каждом узле, которые работают в конкурентном режиме, т.е. при падении одного из узлов доставка сообщений будет производиться оставшимися узлами. - -Работа в кластере обеспечивается через компоненты _Apache Felix Event Admin_, реализующий рассылку служебных событий по топикам внутри узла, -и _Apache Karaf Cellar_ с интеграцией с _Event Admin_, реализующий рассылку данного события по всем узлам кластера. При создании/удалении подписки система создаёт соответствующее событие и отправляет в специальный топик _subscription_, далее подписчики на всех узлах, входящих в кластер, получают и обрабатывают данное событие. - -=== Настройки - -Настройки производятся на любом узле либо на мастер узле, в зависимости от настроек кластера. - -Для синхронизации топика _subscription_ в конфигурационном файле _org.apache.karaf.cellar.groups.cfg_, нужно добавить строки: - -[source,properties] ----- - default.event.blacklist.inbound = none - default.event.blacklist.outbound = none - default.event.whitelist.inbound = subscription - default.event.whitelist.outbound = subscription ----- - -Далее если _Apache Karaf Cellar_ настроен правильно, то конфигурационные файлы _org.apache.karaf.cellar.groups.cfg_ должны синхронизироваться и строки, представленные выше, появятся на всех узлах. - -Если синхронизация конфигурационных файлов не проходит, можно проверить статус _cellar_ продюсера командой: - - cluster:producer-status - -если выключен, то можно включить командой: - - cluster:producer-start - -=== Удаление топиков - -Удаление топиков происходит в 2 этапа - -- При вызове метода _delete_ топик помечается в БД, как удалённый - -- По расписанию запускается задача (по умолчанию раз в сутки в 00:00), которая удаляет топик окончательно вместе с подписками, правами и консьюмерами. -Либо очистка запускается вручную вызовом метода _clean_ сервиса _topic-management_ - -Если до очистки системы изменить топик помеченный как удалённый или попытаться создать его заново, то восстановится старый топик - -=== Плановая задача по очистке топиков - -Т.к. удаление топиков происходит в 2 этапа, с помощью планировщика _Quartz2_, работающего в кластере, запускается задача по очистке. Запуск происходит в конкурентном режиме, узел первый запустивший задачу получает приоритет, на остальных узлах задача останавливается до следующего запуска. - -Частота запуска задачи настраивается в конфигурационном файле _ru.entaxy.esb.system.event.handler.cfg_ в свойстве quartz.job.clean.cron=0+0+0+*+*+?+* -с помощью cron выражения. Особенность cron выражения для quartz в том что “++” используется, как разделитель. - diff --git a/documentation/core/topic/Topic_publish_diagram.png b/documentation/core/topic/Topic_publish_diagram.png deleted file mode 100644 index 5b1bc1d..0000000 Binary files a/documentation/core/topic/Topic_publish_diagram.png and /dev/null differ diff --git a/documentation/extras/eav.adoc b/documentation/extras/eav.adoc deleted file mode 100644 index 2d23c1b..0000000 --- a/documentation/extras/eav.adoc +++ /dev/null @@ -1,171 +0,0 @@ -= Хранилище данных EAV - -== Описание модуля EXTRAS :: ENTAXY :: EAV (Entity, Attribute, Value) - -Хранилище данных EAV реализует модель _Сущность-Атрибут-Значение_ - это модель данных, предназначенная для описания сущностей, в которых количество атрибутов (свойств, параметров) не ограничено или не известно заранее. - - -== Объекты модуля ЕАV - -image::eav_objects.png[] - -*Внешняя сущность*(External Entity) - любая внешняя сущность относительно модуля EAV. - -*Сущность EAV*(Entity EAV) - именованная сущность, связывающая аттрибуты с внешней сущностью. - Модуль предоставляет возможность объединять сущности EAV в одноуровневую иерархию. - -*Атрибут*(Attribute) - именованный атрибут сущности EAV, содержит значение и его тип. - -*Типы значений:* - -* DOUBLE -* LONG -* TEXT -* JSON - - - - -== Использование хранилища EAV - -В BLUEPRINT подключаем OSGI-сервис EAVProcessor -[source] ----- - ----- - -в маршрутах или java коде осуществляем необходимые вызовы для создания/получения/изменения значений. - -*Примеры вызовов из маршрута Apache Camel XMLDSL* - -Создание атрибута для внешней сущности -[source] ----- - ----- - -Получить все значения сохранённой сущности -[source] ----- - ----- - -Удалить сохранённые значения -[source] ----- - ----- - - - -== OSGI-сервис EAVProcessor. -Сервис, выставляющий api для работы с EAV хранилищем. - - - -*Методы:* - -* _createPrimitive_ - простой метод сохранения примитивного значения(числового, строкового) -* _createComplex_ - простой метод сохранения комплексного значения(JSON) -* _getEntityWithValues_ - получение значений сущности EAV по имени -* _fetchEntityWithValues_ - получение значений сущности EAV по имени либо null, без исключений -* _getEntityNamedAttributes_ - получение значений с определённым именем для сущности EAV -* _getEntityByNameAndAttributeValue_ - получение сущности EAV по атрибуту -* _getParentEntity_ - получение родительской сущности EAV для внешней связанной сущности -* _getChildEntities_ - получение дочерних сущностей EAV для внешней связанной сущности с именем сущности EAV по умолчанию(PARENT) -* _getChildEntitiesByName_ - получение дочерних сущностей EAV для внешней связанной сущности с указанным именем сущности EAV -* _getByExternalEntity_ - получение всех сущностей EAV для внешней связанной сущности -* _getByAttributeSet_ - получение сущностей EAV по множественным наборов параметров, каждый набор составляется из значений элементов с одним порядковым номером всех списков -* _updateAttribute_ - метод для изменения значения аттрибута -* _deleteExternalEntity_ - удаление всех записей связанных с внешней сущностью -* _deleteEntity_ - удаление именованной сущности EAV -* _deleteAllEntityAttributes_ - удаление атрибутов именованной сущности EAV -* _deleteAllEntityAttributesByName_ - удаление аттрибута сущности EAV с определённым наименованием -* _combineEntities_ - метод для объединения внешних сущностей под 1 родителем - - - -== Схема базы данных(БД). - -Схема БД при таком подходе остаётся неизменной независимо от состава и структуры хранимых данных. -Бандл eav-storage разворачивает структуру из 2 таблиц: - -*Таблица eav_entity* -|=== -|Слолбец |Параметры |Описание -//---------------------- -|id -|bigint, not null -|идентификатор сущности модуля EAV - -|external_id -|text, not null -|внешний идентификатор связываемой сущности - -|external_type -|text, not null -|тип связываемой сущности - -|name -|text -|наименование сущности модуля EAV - -|parent_id -|bigint, not null, default 0 -|идентификатор(поле id) родительской сущности модуля EAV - -|create_date -|timestamp, not null -|служебное поле, дата создания - -|edit_date -|timestamp -|служебное поле, дата изменения - -|created_by -|text, not null -|служебное поле, логин автора записи - -|external_type -|text -|служебное поле, логин последнего изменившего сущность -|=== - - -*Таблица eav_attribute* -|=== -|Слолбец |Параметры |Описание -//---------------------- -|id -|bigint, not null -|идентификатор атрибута - -|entity_id -|text, not null -|идентификатор сущности eav_entity - -|name -|text, not null -|наименование аттрибута - -|type -|text -|тип аттрибута - -|double -|double -|служебное поле для хранения значения - -|long -|bigint -|служебное поле для хранения значения - -|text -|text -|служебное поле для хранения значения - -|text2 -|text -|служебное поле для хранения значения - -|=== \ No newline at end of file diff --git a/documentation/extras/eav_objects.png b/documentation/extras/eav_objects.png deleted file mode 100644 index bab4d67..0000000 Binary files a/documentation/extras/eav_objects.png and /dev/null differ diff --git a/documentation/index.adoc b/documentation/index.adoc deleted file mode 100644 index ed0cf6d..0000000 --- a/documentation/index.adoc +++ /dev/null @@ -1,177 +0,0 @@ -= Entaxy -:imagesdir: . -:hardbreaks: - -Entaxy - шина, которую можно конфигурировать извне с помощью графического интерфейса или API, состоящая из модулей: - -image::Entaxy.png[] - -== *Управленческий слой(core):* - -=== basic-auth - -модуль, отвечающий за аутентификацию в шине. Tак же занимается хранением, созданием, редактированием и удалением учетных записей. - -xref:core/auth/Authorization.adoc[Более полную информации о basic-auth найдете по этой ссылке] - -_Для разработчиков: --имеет Api, который занимается Crud операциями, --хранит учетные записи в базе данных, --предоставляет файл с актуальной информацией для nginx, --выставляет interceptor для аутентификации в других сервисах, --выставляет interceptor для определения принадлежности аккаунта определённой системе._ - - -=== permission - -модуль, отвечающий за управление правами доступа. - -xref:core/permission/SOAP-service-Permission-management.adoc[Более полную информации о permission найдете по этой ссылке] - -_Для разработчиков: --имеет Api, который занимается Crud операциями -- хранит права в базе данных, --(camel)компонент, который используется в маршрутах, для проверки возможности отправки из системы a в систему b. --выставляет interceptor для авторизации в служебных сервисах._ - - -=== system-management-api - -модуль, отвечающий за создание систем и разнообразных коннекторов. (коннекторы бывают разных типов, будет описано далее) - -xref:core/system-managment/Users-manual-System-management.adoc[Более полную информации о system-management найдете по этой ссылке] - -__Для разработчиков: --имеет Api, который занимается Crud операциями --хранит параметры в базе данных, --генерирует профиля и коннекторы на основе переданных через Api параметров и деплоит их через репозиторий nexus или файловую систему и cellar (блок Deployer) в шину. --также имеет возможность Crud прав доступа над учетными записями систем. -__ - -=== system-registry - -модуль, осуществляющий поддержку динамического управления профилями систем(профиль - это отражение параметров системы в шине) - -__Для разработчиков: --хранит информацию о системах в базе данных, --(camel)компонент, который используется в маршрутах для определения нужной системы и коннектора для отправки сообщения в нее. -__ - -=== system-group-registry - -модуль, осуществляющий поддержку динамического управления группами систем, которые определяют логику отправки в необходимую систему в определенной группе. - -__Для разработчиков: --хранит информацию о группах в базе данных, --(camel)компонент, который используется в маршрутах для определения нужной системы из группы. -__ - -=== events - -модуль, для работы с топиками(по схеме Publisher (издатель)-Subscriber (подписчик)) для систем. - -xref:core/topic/Topic-management-Rest-service.adoc[Более полную информации о events найдете по этой ссылке] - -__Для разработчиков: --хранит информацию о топиках в базе данных, --имеет Api(Rest), который занимается Crud операциями -__ - -=== schema - -модуль, осуществляющий хранение всех схем, через которые делаются преобразования сообщений, валидация, поднятие сервиса в шине. - -xref:core/schema/Schema.adoc[Более полную информации о schema найдете по этой ссылке] - -__Для разработчиков: --имеет Api, который занимается Crud операциями --хранит информацию о загруженных схемах в базе данных, --(camel)компонент, который используется в маршрутах для валидации xml через xsd, которую загрузили в бд. --service, который подключается к xslt компоненту для подгрузки xsl из бд --service, который подключается к cxf компоненту для подгрузки xsd и wsdl из бд -__ - -=== bridge - -модуль, осуществляющий передачу сообщений в другую шину. - -xref:core/bridge/Bridge-Description-and-Configuration.adoc[Более полную информации о bridge найдете по этой ссылке] - -__Для разработчиков: --знает о всех подключенных шинах и их именах в рамках всей системы --осуществляет передачу сообщений через artemis, также получает сообщения из другой шины. --в перспективе будет создан компонент который по названию будет определять в какую шину отправить, а не напрямую через очереди, как это сделано сейчас. -__ - -=== Error Handler - -модуль, осуществляющий за обработку ошибок в шине. - -Централизованный обработчик ошибок для формирования кодов ошибок, их синхронного возврата клиенту и для асинхронного дублирования более подробного описания ошибки (для клиента и для Центральной Базы Интеграции). - -xref:core/exception/Centralized-error-handler.adoc[Более полную информации о централизованном обработчике ошибок найдете по этой ссылке] - -xref:core/exception/Error-description.adoc[Более полную информации о классификации ошибок найдете по этой ссылке] - -__Для разработчиков: --знает о всех подключенных шинах и их именах в рамках всей системы --осуществляет передачу сообщений через artemis, также получает сообщения из другой шины. --в перспективе будет создан компонент, который по названию будет определять в какую шину отправить, а не напрямую через очереди, как это сделано сейчас. -__ - -=== Deployer - -набор модулей осуществляющих работу с бандлами - -xref:core/deployer/deployer-common.adoc[Более полную информации о Deployer найдете по этой ссылке] - -__Для разработчиков: --deployer-api - интерфейс репозитория для хранения артефактов --file-system-deployer - реализация репозитория в папке --nexus-deployer - реализация репозитория в Sonartype Nexus --cellar-deployer - система управления бандлами через Apache Cellar -__ - -== Также как вспомогательные инструменты используется следующие модули: - -_сellar_ - модуль для загрузки сгенерированных blueprint в шину(в несколько карафов). -_ignite_ - модуль для создания распределенного хранилища ключ-значение.(используется для более быстрой работы некоторых компонентов, которым нужно хранилище) -_liquibase_ - модуль для поддержки актуальной схемы бд. - -== Клиентский слой - -_US_ - универсальный коннектор, через который можно отправлять сообщения в другие системы. -_(делится на обычный и служебный)_ -xref:connectors/uniform-exchange-service/uniform-exchange-service.adoc[Универсальный сервис] - -_file-connector_ - коннектор, который сообщения для определенной системы отправляет с помощью файла(получая сообщение, проводит необходимые преобразования, нпрм архивацию, и складывает в определенную папку). - -_db-connector_ - коннектор, который осуществляет обмен сообщениями с системой через бд. (сообщение полученное из другой системы конвертируется в запись в бд, и для отправки сообщения в шину необходимо сделать запись в бд) - -xref:connectors/create_new_connectors.adoc[Информация о создании новых коннекторов] - -image::connectors/db-connector/deployment_schema.png[] - -_nsi_ - soap коннектор, который был поднят с помощью клиентской wsdl и работает по специальной схеме, определенной клиентом с помощью бд. -_big-packets-connector_ - soap коннектор, через который можно отправлять сообщения в другие системы, предназначенный для отправки больших сообщений, которые отправляются по частям. - -=== Необходимые для шины внешние модули - -nginx(опционально) - балансировщик нагрузки, также занимается предварительной аутентификацией. -nexus(опционально) - необходим для хранения и динамической развертки блюпринтов. -db(поддерживается mssql и postgresql) esb_entaxy - необходима для хранения служебных данных(связанных с настройкой маршрутов в шине). -db(поддерживается mssql и postgresql) cache - необходима для хранения временных данных, связанных с определенным сообщением. -artemis - брокер сообщений. -file-storage(nfs) - необходим для работы сервиса больших пакетов, nginx и тд. - -=== Схема прохождения пакета - -Для разработчиков: - -image::connectors/Message.png[] - -_Все сообщения отправляемые в шину будут отправляться из входного коннектора в выходную точку профиля._ - -Общее описание Entaxy: - -xref:core/Common-description-of-the-transport-layer.adoc[Общее описание Entaxy] \ No newline at end of file diff --git a/documentation/installation/img/services.png b/documentation/installation/img/services.png deleted file mode 100644 index 13a6ed7..0000000 Binary files a/documentation/installation/img/services.png and /dev/null differ diff --git a/documentation/installation/install.adoc b/documentation/installation/install.adoc deleted file mode 100644 index 7590afe..0000000 --- a/documentation/installation/install.adoc +++ /dev/null @@ -1,633 +0,0 @@ -= Руководство по установке Entaxy -:nofooter: -:toc: left -:toc-title: Содержание -:sectnums: -:icons: font -:title-page: -:revnumber: 1.0 - -<<< - -== Цель руководства - -Данное руководство описывает процесс установки системы Entaxy (далее Система) на сервер или рабочую станцию в демонстрационных целях. - -<<< - -== Требования и замечания - -Для установки Системы требуется: - -- Установленная на сервер или рабочую станцию операционная система LTS: AstraLinux 2.12 (Orel), RHEL (CentOS), Ubuntu с настроенными репозиториями для установки программного обеспечения, входящего в состав поставки ОС -- Созданный в системе пользователь с правами sudo. Под этим пользователем будет производиться установка Системы. Далее по инструкции имя пользователя обозначено как ``. Вместо `` нужно подставить имя пользователя, который будет производить установку. -- Опыт работы с Debian/Ubuntu/AstraLinux системами - -<<< - -== Дистрибутивы программных продуктов - -Вместе с инструкцией поставляются все дистрибутивы, необходимые для установки Системы. Их распространение разрешено лицензиями. - -Дистрибутивы доступны в каталоге `distrib`. Перед установкой Системы нужно скопировать этот каталог на сервер или рабочую станцию, куда будет производиться установка в каталог `/home/`. - -Вся дальнейшая установка Системы будет производиться из файлов, скопированных в `/home//distrib` - -<<< - -== Установка PostgresPro 11 Standard Edition - -Система использует СУБД PostgresPro 11 Standard для хранения конфигураций, справочников и т.д. Указанная СУБД входит в Реестр программных продуктов. - -Для установки PostgresPro 11 Standard Edition необходимо перейти в каталог с дистрибутивом PostgresPro 11 Standard Edition, и установить пакеты в следующей последовательности: - -[source,bash] ----- -cd /home//distrib/postgrespro-std-11 -sudo apt install ./postgrespro-std-11-libs_11.12.1-1.orel_amd64.deb -sudo apt install ./postgrespro-std-11-client_11.12.1-1.orel_amd64.deb -sudo apt install ./postgrespro-std-11-server_11.12.1-1.orel_amd64.deb -sudo apt install ./postgrespro-std-11-contrib_11.12.1-1.orel_amd64.deb -sudo apt install ./postgrespro-std-11_11.12.1-1.orel_amd64.deb ----- - -При установке последнего пакета производится автоматическая инициализация кластера СУБД, поэтому никаких действий по начальной инициализации PostgresPro 11 Standard Edition производить не требуется. - -<<< - -== Подготовка СУБД для работы с Entaxy - -Перед установкой Системы нужно подготовить СУБД для работы с ней. - -Подготовка заключается в создании пользователя СУБД и создании баз данных. - -Для работы с СУБД используется инструмент `psql` с правами администратора. Для запуска инструмента выполнить следующие команды: - -[source,bash] ----- -sudo su - postgres -psql ----- - -После запуска иструмента выполняются следующие действия: - -. Создание пользователя: -+ -[source,sql] ----- -CREATE USER entaxy WITH ENCRYPTED PASSWORD 'entaxy'; ----- -+ -. Создание баз данных -+ -[source,sql] ----- -CREATE DATABASE cache; -CREATE DATABASE storage; ----- -+ -. Назначение прав пользователю `entaxy` на только что созданные базы `cache` и `storage`: -+ -[source,sql] ----- -GRANT ALL ON DATABASE cache TO entaxy; -GRANT ALL ON DATABASE storage TO entaxy; ----- - -После создания пользователя и БД выйти из инструмента `psql` с помощью ввода команды `\q` - -После выхода из инструмента для работы с PostgresPro 11 Standard Edition `psql` требуется выйти из консоли пользователя `postgres`. Для этого выполнить команду: - -[source,bash] ----- -exit ----- - -<<< - -== Установка OpenJDK 11 - -Установка OpenJDK 11 производится в каталог `/opt/openjdk` - -Для установки OpenJDK 11 нужно перейти в каталог `/home//distrib/openjdk`, распаковать дистрибутив OpenJDK 11 в каталог установки и назначить на распакованные файлы права пользователя `root`: - -[source,bash] ----- -cd /home//distrib/openjdk -sudo mkdir -p /opt/openjdk -sudo tar xvf bellsoft-jdk11.0.11+9-linux-amd64.tar.gz -C /opt/openjdk -sudo chown -R root:root /opt/openjdk -sudo chmod 755 /opt/openjdk/jdk-11.0.11 ----- - -<<< - -== Установка и настройка nginx - -Для аутентификации пользователей и маршрутизации запросов в Системе используется `nginx`, работающий как реверсивный прокси. -Перед настройкой конфигурации `nginx` необходимо его установить командой: - -[source,bash] ----- -sudo apt install nginx ----- - -Затем удалить конфигурацию nginx по-умолчанию, скопировать предварительно настроенный файл конфигурации `nginx` из каталога `/home//distrib/nginx/sites-available` в `/etc/nginx/sites-available`, создать символьную ссылку на конфигурацию в каталоге разрешённых конфигураций: - -[source,bash] ----- -sudo rm -rf /etc/nginx/sites-enabled/default -sudo cp /home//distrib/nginx/sites-available/entaxy.conf /etc/nginx/sites-available -sudo ln -s /etc/nginx/sites-available/entaxy.conf /etc/nginx/sites-enabled/entaxy.conf ----- - -После установки новой конфигурации и её разрешения, необходимо перезагрузить конфигурацию `nginx` командой: - -[source,bash] ----- -sudo nginx -t <1> -sudo systemctl reload nginx <2> ----- -<1> - валидация конфигурации nginx (если команда вернёт строку `syntax is ok`, то конфигурация валидна) -<2> - перезагрузка конфигурации nginx - -Затем необходимо создать файл паролей Basic аутентификации `htpasswd` в каталоге `/opt/nginx` - -=== Управление сервисом nginx - -Запуск `nginx` выполняется командой: - -[source,bash] ----- -sudo systemctl start nginx ----- - -Остановка `nginx` выполняется командой: - -[source,bash] ----- -sudo systemctl stop nginx ----- - -Перезапуск `nginx` выполняется командой: - -[source,bash] ----- -sudo systemctl restart nginx ----- - -Перезагрузка конфигурации `nginx` выполняется командой: - -[source,bash] ----- -sudo systemctl reload nginx ----- - -<<< - -== Установка Apache Artemis - -Установка Apache Artemis производится в каталог `/opt/artemis` - -Для установки Apache Artemis необходимо выполнить следующие шаги: - -. Создать пользователя `artemis`, под которым будет работать Artemis. При создании пользователя создаётся домашний каталог пользователя `/opt/artemis`, в котором будет установлен сам Artemis: -+ -[source,bash] ----- -sudo useradd -d /opt/artemis -m -r artemis -s /usr/sbin/nologin ----- -+ -. Распаковать дистрибутив Artemis в домашний каталог Artemis и назначить распакованным файлам права пользователя `artemis`: -+ -[source,bash] ----- -cd /home//distrib/artemis -sudo tar xvf apache-artemis-2.17.0-bin.tar.gz -C /opt/artemis -sudo cp -a /opt/artemis/apache-artemis-2.17.0/. /opt/artemis/ -sudo rm -rf /opt/artemis/apache-artemis-2.17.0 -sudo chown -R artemis:artemis /opt/artemis ----- -+ -. Создать каталог для брокера: -+ -[source,bash] ----- -sudo mkdir -p /opt/artemis/brokers -sudo chown artemis:artemis /opt/artemis/brokers ----- -+ -. Создать брокер: -+ -[source,bash] ----- -sudo su -s /bin/sh -c \ - "export JAVACMD=/opt/openjdk/jdk-11.0.11/bin/java; \ - export ARTEMIS_HOME=/opt/artemis; \ - /opt/artemis/bin/artemis create \ - --name entaxy-broker \ - --user artemis \ - --password artemis \ - --require-login \ - /opt/artemis/brokers/entaxy-broker" \ - artemis ----- -+ -После выполнения команды создаётся новый брокер в каталоге `/opt/artemis/brokers/entaxy-broker` с именем `entaxy-broker`. Имя брокера задаётся в параметре `--name`. -Имя пользователя и пароль для входа в Web консоль брокера задаётся в параметрах `--user` и `--password` соответственно. -+ -. Создать файл сервиса `/etc/systemd/system/entaxy@artemis.service`: -+ -.entaxy-broker@artemis.service -[source,bash] ----- -[Unit] -Description=Artemis ActiveMQ Message Broker -After=syslog.target network.target - -[Service] -Type=forking -ExecStart=/opt/artemis/brokers/entaxy-broker/bin/artemis-service start -ExecStop=/opt/artemis/brokers/entaxy-broker/bin/artemis-service stop - -User=artemis -Group=artemis - -[Install] -WantedBy=multi-user.target ----- -+ -. Отредактировать переменную окружения `JAVA_HOME` для сервиса брокера: -+ -[source,bash] ----- -sudo systemctl edit entaxy@artemis.service ----- -+ -При выполнении предыдущей команды откроется текстовый редактор, в который надо добавить следующее содержимое, после чего сохранить файл: -+ -[source,bash] ----- -[Service] -Environment="JAVA_HOME=/opt/openjdk/jdk-11.0.11" ----- - -После создания файла сервиса и определения переменных окружения, выполнить команду -[source,bash] ----- -sudo systemctl daemon-reload ----- - -Выполнение команды перезагрузит конфигурацию `systemd`, и сервис для запуска Artemis станет доступен - -Включить автозапуск сервиса Artemis при старте системы: - -[source,bash] ----- -sudo systemctl enable entaxy@artemis.service ----- - -Запустить брокер Entaxy - -[source,bash] ----- -sudo systemctl start entaxy@artemis.service ----- - -=== Управление сервисом Apache Artemis - -Запуск сервиса брокера `entaxy` выполняется командой: - -[source,bash] ----- -sudo systemctl start entaxy@artemis.service ----- - -Остановка сервиса брокера `entaxy` выполняется командой: - -[source,bash] ----- -sudo systemctl stop entaxy@artemis.service ----- - -<<< - -== Установка Apache Karaf - -Установка Apache Karaf производится в каталог `/opt/karaf` - -Для установки Apache Karaf необходимо выполнить следующие шаги: - -. Создать пользователя `karaf`, под которым будет работать Karaf. При создании пользователя создаётся домашний каталог пользователя `/opt/karaf`, в котором будет установлен сам Karaf: -+ -[source,bash] ----- -sudo useradd -d /opt/karaf -m -r karaf -s /usr/sbin/nologin ----- -+ -. Распаковать дистрибутив Karaf в домашний каталог, и назначить распакованным файлам права пользователя `karaf`: -+ -[source,bash] ----- -cd /home//distrib/karaf -sudo tar xvf apache-karaf-4.2.9.tar.gz -C /opt/karaf -sudo cp -a /opt/karaf/apache-karaf-4.2.9/. /opt/karaf -sudo rm -rf /opt/karaf/apache-karaf-4.2.9 -sudo cp /home//distrib/karaf/jre.properties /opt/karaf/etc/jre.properties -sudo chown -R karaf:karaf /opt/karaf ----- -+ -. Отредактировать переменную окружения `JAVA_HOME` для Karaf: -+ -[source,bash] ----- -sudo sed -i 's/# export JAVA_HOME/export JAVA_HOME=\/opt\/openjdk\/jdk-11.0.11/g' /opt/karaf/bin/setenv ----- -+ -. Отредактировать переменную окружения `EXTRA_JAVA_OPTS` для Karaf, чтобы устранить возможность эксплуатацию критической уязвимости Log4j CVE-2021-44228: -+ -[source,bash] ----- -sudo sed -i 's/# export EXTRA_JAVA_OPTS/export EXTRA_JAVA_OPTS=-Dlog4j2.formatMsgNoLookups=true/g' /opt/karaf/bin/setenv ----- -+ -. Создать файл сервиса `/etc/systemd/system/karaf.service` со следующим содержимым: -+ -.karaf.service -[source,bash] ----- -[Unit] -Description=Entaxy Karaf -After=syslog.target network.target - -[Service] -ExecStart=/opt/karaf/bin/karaf start -ExecStop=/opt/karaf/bin/karaf stop - -User=karaf -Group=karaf - -SuccessExitStatus=0 143 -RestartSec=15 -Restart=on-failure - -LimitNOFILE=102642 - -[Install] -WantedBy=multi-user.target ----- -+ -. После создания файла сервиса и определения переменных окружения, выполнить команду: -+ -[source,bash] ----- -sudo systemctl daemon-reload ----- - -Выполнение команды перезагрузит конфигурацию `systemd`, и сервис для запуска Karaf станет доступен - -Включить автозапуск сервиса Karaf при старте системы: - -[source,bash] ----- -sudo systemctl enable karaf.service ----- - -=== Управление сервисом Apache Karaf - -Запуск сервиса `karaf` выполняется командой: - -[source,bash] ----- -sudo systemctl start karaf.service ----- - -Остановка сервиса `karaf` выполняется командой: - -[source,bash] ----- -sudo systemctl stop karaf.service ----- - -<<< - -== Настройка Apache Karaf - -Скопируйте файлы конфигурации Entaxy из `/home//distrib/entaxy/etc` в каталог `/opt/karaf/etc`. Все файлы предварительно настроены для работы всех компонентов на одной машине: - -[source,bash] ----- -sudo cp -a /home//distrib/entaxy/etc/. /opt/karaf/etc -sudo chown -R karaf:karaf /opt/karaf/etc ----- - -Установочные файлы Системы хранятся в локальном репозитории артефактов. Перед установкой Системы необходимо скопировать локальный репозиторий из каталога `/home//distrib/entaxy/.m2` в `/opt/karaf`: - -[source,bash] ----- -sudo cp /home//distrib/entaxy/.m2/. /opt/karaf/.m2 -sudo chown -R karaf:karaf /opt/karaf/.m2 ----- - -После копирования файлов конфигураций и локального репозитория можно запустить сервис `karaf` - -<<< - -== Подготовка ОС для установки Entaxy - -Система в процессе работы использует файловые ресурсы, в которых хранятся передаваемые файлы, пакеты и т.д. Эти ресурсы перед установкой Системы необходимо создать: - -[source,bash] ----- -sudo mkdir -p /opt/karaf/bundle-repository -sudo mkdir -p /mnt/entaxy/file-connector/message-store -sudo mkdir -p /mnt/entaxy/ignite -sudo mkdir -p /mnt/entaxy/filestore -sudo chown -R karaf:karaf /opt/karaf/bundle-repository -sudo chown -R karaf:karaf /mnt/entaxy ----- - -<<< - -== Установка Entaxy - -=== Проверка работоспособности Apache Karaf - -Установка Entaxy осуществляется из консоли управления Apache Karaf. Чтобы войти в консоль управления Apache Karaf, нужно выполнить в терминале команду: - -[source,bash] ----- -ssh -p 8101 karaf@localhost ----- - -При первом входе в консоль управления необходимо на запрос предоставления доступа ввести слово `yes` и нажать `Enter` -После этого Apache Karaf запросит пароль - в качестве пароля ввести `karaf` - -[source,bash] ----- -Warning: Permanently added '[localhost]:8101' (RSA) to the list of known hosts. -Password authentication -Password: - __ __ ____ - / //_/____ __________ _/ __/ - / ,< / __ `/ ___/ __ `/ /_ - / /| |/ /_/ / / / /_/ / __/ - /_/ |_|\__,_/_/ \__,_/_/ - - Apache Karaf (4.2.9) - -Hit '' for a list of available commands -and '[cmd] --help' for help on a specific command. -Hit 'system:shutdown' to shutdown Karaf. -Hit '' or type 'logout' to disconnect shell from current session. ----- - -Для контроля корректности установки ввести команду `list`: - -[source,bash] ----- -karaf@root()> list -START LEVEL 100 , List Threshold: 50 -ID │ State │ Lvl │ Version │ Name -───┼────────┼─────┼─────────┼──────────────────────────────────────────────── -22 │ Active │ 80 │ 4.2.9 │ Apache Karaf :: OSGi Services :: Event -karaf@root()> ----- - -Если статус компонента `Apache Karaf {two-colons} OSGi Services {two-colons} Event` установлен в состояние `Active`, это значит, что Apache Karaf установлен корректно, и можно переходить к установке Entaxy. - -=== Установка Entaxy - -Установка Entaxy выполняется из консоли управления Apache Karaf. Сначала к списку репозиториев Karaf добавляется репозиторий Entaxy: - -[source,bash] ----- -feature:repo-add mvn:ru.entaxy.esb/karaf-features/1.8.1/xml/features ----- - -Затем запускается команда установки всех компонентов Entaxy -[source,bash] ----- -feature:install entaxy-all ----- - -После завершения установки Entaxy произойдёт выход из консоли управления Apache Karaf. Это связано с перезапуском встроенного в `Karaf` SSH сервера. Это нормальная ситуация, в процессе установки происходит настройка устанавливаемых компонентов. - -=== Проверка работоспособности Entaxy - -Чтобы проверить корректность установки необходимо вновь зайти в консоль управления Karaf: - -[source,bash] ----- -ssh -p 8101 karaf@localhost ----- - -В консоли управления ввести команду: - -[source,bash] ----- -karaf@root()> list ----- - -Отобразится список установленных компонентов Entaxy, и вспомогательных библиотек. Состояние почти всех компонентов должно быть `Active` - -Среди компонентов, которые могут не находиться в состоянии `Active` можно выделить два: - -- `camel-caffeine-lrucache` может находиться в состоянии `Resolved` -- `INTEGRATION {two-colons} ENTAXY {two-colons} DB EXAMPLE CONNECTOR` будет находиться в состоянии `Failure` - -Компонент `INTEGRATION {two-colons} ENTAXY {two-colons} DB EXAMPLE CONNECTOR` необходимо отключить командой: - -[source,bash] ----- -karaf@root()> bundle:stop ----- - -Например, если идентификатор компонента 97, как показано ниже, - -[source,bash] ----- - 97 │ Failure │ 80 │ 1.0.0.SNAPSHOT │ INTEGRATION :: ENTAXY :: DB EXAMPLE CONNECTOR ----- - -то команда будет выглядеть так: - -[source,bash] ----- -karaf@root()> bundle:stop 97 ----- - -После остановки компонент перейдёт в состояние `Resolved` - -=== Отключение компонента установки Nexus - -В процессе своей работы Entaxy генерирует и запускает новые компоненты, например, при создании новой системы, она будет отображаться в Entaxy как отдельный компонент. В момент генерирования и установки нового компонента, производится помещение этого компонента во внешний репозиторий. Это позволяет автоматически переустановить сгенерированные компоненты при добавлении нового узла в кластер Entaxy. -В Entaxy существует два варианта хранения сгенерированных компонентов: - -- Sonatype Nexus -- Файловая система - -По-умолчанию все генерируемые компоненты помещаются в систему управления репозиториями Sonatype Nexus. Это отдельное ПО, целесообразность установки которого оправдана только в кластерных конфигурациях. В нашем случае установка всей системы выполняется на одну машину. - -Чтобы сгенерированные компоненты устанавливались в файловую систему, требуется отключить компонент установки сгенерированных компонентов в Sonatype Nexus. Отключение компонента выполняется следующим образом: - -. Войти в консоль управления Karaf -. Найти идентфикатор компонента `SYSTEM {two-colons} ENTAXY {two-colons} NEXUS {two-colons} DEPLOYER` -. Остановить его командой: -+ -[source,bash] ----- -karaf@root()> bundle:stop ----- - -<<< - -== Настройка обновления файла аутентификации `htpasswd` - -В Entaxy используется Basic аутентификация для всех запросов, приходящих на балансировщик, функции которого выполняет `nginx`. Аутентификация производится средствами самого `nginx`. - -В качестве базы для хранения пользователей `nginx` использует файл в специальном формате htpasswd. - -Для того, чтобы вновь созданные пользователи в Системе могли аутентифицироваться, необходимо передать информацию о них в файл htpasswd. Для этого используется специальный скрипт, который отрабатывает по расписанию. Сам скрипт нужно предварительно скопировать из каталога `/home//distrib/script/htpasswd-checker.sh` в любой каталог, например, в `/opt/htpasswd-checker`: - -[source,bash] ----- -sudo mkdir -p /opt/htpasswd-checker/log -sudo cp /home//distrib/nginx/htpasswd /etc/nginx -sudo cp /home//distrib/script/htpasswd-checker.sh /opt/htpasswd-checker -sudo chown -R root:root /opt/htpasswd-checker ----- - -Так же требуется проверить адреса серверов кластера, публикующих сервис для работы с файлом htpasswd(сервера с karaf) для ключа KARAF_HOST_NAMES: -[source,bash] ----- -KARAF_HOST_NAMES=("http://192.168.122.93:9091" "http://192.168.122.94:9091") ----- - -Затем создать расписание запуска для `cron`: - -[source,bash] ----- -sudo crontab -e ----- - -В открывшемся редакторе добавить запись: - -[source,bash] ----- -* * * * * /opt/htpasswd-checker/htpasswd-checker.sh ----- - -и сохранить файл. Теперь скрипт будет отрабатывать каждую минуту, подключаться к сервису аутентификации в Apache Karaf, проверять изменение пользовательской информации, и обновлять файл `/etc/nginx/htpasswd` если информация обновилась. - -<<< - -== Проверка работоспособности сервисов - -Чтобы проверить, что сервисы Entaxy работают, можно провести быстрый тест. - -Для этого открыть браузер на машине, где установлена Система, и перейти по адресу `http://localhost:8181/cxf`. Браузер запросит имя пользователя и пароль. Ввести `admin` в качестве имени пользователя, и `admin` в качестве пароля. Логин и пароль уже прописаны в файле `/etc/nginx/htpasswd`. При успешной аутентификации отобразится страница следующего вида: - -image::img/services.png[] - -На этом установку Системы можно считать законченной. \ No newline at end of file diff --git a/documentation/installation/installation-table-of-contents.adoc b/documentation/installation/installation-table-of-contents.adoc deleted file mode 100644 index 80a255e..0000000 --- a/documentation/installation/installation-table-of-contents.adoc +++ /dev/null @@ -1,11 +0,0 @@ -__Alternative languages:__ - -* xref:installation-table-of-contents.ru.adoc[Russian] - -= Installation -Entaxy have different installation ways OOTB: - -* xref:../../distribution/entaxy-docker/ReadMe.md[Development docker installation] -* xref:../../features/README.md[Development standalone installation] -* xref:install.adoc[Enterprise environment installation] -* xref:local-installation/local-installation.adoc[Local installation] diff --git a/documentation/installation/installation-table-of-contents.ru.adoc b/documentation/installation/installation-table-of-contents.ru.adoc deleted file mode 100644 index 48eeadb..0000000 --- a/documentation/installation/installation-table-of-contents.ru.adoc +++ /dev/null @@ -1,11 +0,0 @@ -__Alternative languages:__ - -* xref:installation-table-of-contents.adoc[English] - -= Установка -Entaxy из коробки имеет разные варианты установки: - -* xref:../../distribution/entaxy-docker/ReadMe.md[Установка для разработки в докер] -* xref:../../features/README.ru.md[Установка для разработки отдельных серверных приложений] -* xref:install.adoc[Установка на промышленное окружение] -* xref:local-installation/local-installation.ru.adoc[Локальная установка] diff --git a/documentation/installation/local-installation/image/cluster-note-list.png b/documentation/installation/local-installation/image/cluster-note-list.png deleted file mode 100644 index eb33f85..0000000 Binary files a/documentation/installation/local-installation/image/cluster-note-list.png and /dev/null differ diff --git a/documentation/installation/local-installation/image/health-check.png b/documentation/installation/local-installation/image/health-check.png deleted file mode 100644 index a8b56db..0000000 Binary files a/documentation/installation/local-installation/image/health-check.png and /dev/null differ diff --git a/documentation/installation/local-installation/image/pgadmin-create-user.jpg b/documentation/installation/local-installation/image/pgadmin-create-user.jpg deleted file mode 100644 index a859f7b..0000000 Binary files a/documentation/installation/local-installation/image/pgadmin-create-user.jpg and /dev/null differ diff --git a/documentation/installation/local-installation/image/pgadmin-start.jpg b/documentation/installation/local-installation/image/pgadmin-start.jpg deleted file mode 100644 index dce6ec6..0000000 Binary files a/documentation/installation/local-installation/image/pgadmin-start.jpg and /dev/null differ diff --git a/documentation/installation/local-installation/image/postgresql-installation-1.jpg b/documentation/installation/local-installation/image/postgresql-installation-1.jpg deleted file mode 100644 index 2734c56..0000000 Binary files a/documentation/installation/local-installation/image/postgresql-installation-1.jpg and /dev/null differ diff --git a/documentation/installation/local-installation/image/source-download.jpg b/documentation/installation/local-installation/image/source-download.jpg deleted file mode 100644 index 88e99d8..0000000 Binary files a/documentation/installation/local-installation/image/source-download.jpg and /dev/null differ diff --git a/documentation/installation/local-installation/local-installation.adoc b/documentation/installation/local-installation/local-installation.adoc deleted file mode 100644 index d4fde4c..0000000 --- a/documentation/installation/local-installation/local-installation.adoc +++ /dev/null @@ -1,5 +0,0 @@ -= Entaxy local installation on workstation or server. - -__Alternative languages:__ - -* xref:windows-local-installation.ru.adoc[Russian] diff --git a/documentation/installation/local-installation/local-installation.ru.adoc b/documentation/installation/local-installation/local-installation.ru.adoc deleted file mode 100644 index 496675e..0000000 --- a/documentation/installation/local-installation/local-installation.ru.adoc +++ /dev/null @@ -1,246 +0,0 @@ -= Локальная установка Entaxy на рабочую станцию или сервер. - -__Alternative languages:__ - -* xref:windows-local-installation.adoc[English] - - -== Введение. - -В этой инструкции мы рассмотрим установку Entaxy. Установка на все ОС проходит аналогичным образом и отличается выбором соответствующих инсталляторов или использованием пакетных менеджеров. - - -== Установка Java. - -. Скачиваем и устанавливаем JAVA. Для работы Entaxy рекомендуется Java 11. Работа платформы протестирована на OpenJDK и LibericaJDK от BellSoft (https://libericajdk.ru/pages/downloads/) - -. Создаем переменную окружения JAVA_HOME. - -. Добавляем абсолютный путь к директории bin в системную переменную окружения PATH. - - -== Дистрибутивы Entaxy - -Существует несколько вариантов сборок Entaxy, которые доступны по адресу https://entaxy.ru/download - -. `entaxy-assembly-compact*` - все-в-одном, брокер, бд и графический веб-интерфейс в одной сборке. См. xref:#_установка_all_in_one [Установка all-in-one] - -. `entaxy-assembly*` - сборка без предустановленного графического веб-интерфейса. См. xref:#_установка_без_ui [Установка без UI] - -. `entaxy-assembly-with-ui*` - сборка без предустановленного брокера сообщений. См. xref:#_установка_с_внешним_брокером [Установка с внешним брокером] - -. Все компоненты устанавливаются отдельно. См. xref:#_покомпонентная_установка [Покомпонентная установка] - - -== Установка all-in-one - -. Распаковываем архив `entaxy-assembly-compact*` - -. Распакованный архив лучше перенести в другое место, чтобы абсолютный путь до каталога приложения не был слишком длинным, также необходимо чтобы путь содержал только латинские символы и был без пробелов. - -. Переходим в каталог `/bin` приложения и запускаем: - - entaxy - для Linux - - entaxy.bat - для Windows - -. Немного ждем и проверяем, что система корректно запустилась см. xref:#_проверка_готовности_системы [Проверка готовности системы] - - -== Установка без UI - -. Распаковываем архив `entaxy-assembly*` - -. Распакованный архив лучше перенести в другое место, чтобы абсолютный путь до каталога приложения не был слишком длинным, также необходимо чтобы путь содержал только латинские символы и был без пробелов. - -. Переходим в каталог `/bin` приложения и запускаем: - - entaxy - для Linux - - entaxy.bat - для Windows - -. Немного ждем и проверяем, что система корректно запустилась см. xref:#_проверка_готовности_системы [Проверка готовности системы] - -. Веб-интерфейс можно установить, после запуска системы, командой (в консоли Карафа): `source scripts/entaxy-ui.install` - - -== Установка с внешним брокером - -. Для установки брокера смотрите инструкцию: xref:#_установка_и_настройка_брокера[Установка и настройка брокера] - -. Распаковываем архив `entaxy-assembly-with-ui*` - -. Распакованный архив лучше перенести в другое место, чтобы абсолютный путь до каталога приложения не был слишком длинным, также необходимо чтобы путь содержал только латинские символы и был без пробелов. - -. Переходим в каталог `/bin` приложения и запускаем: - - entaxy - для Linux - - entaxy.bat - для Windows - -. Немного ждем и проверяем, что система корректно запустилась см. xref:#_проверка_готовности_системы [Проверка готовности системы] - - -== Покомпонентная установка - -=== Установка и настройка БД. - -Entaxy не привязана к какой-либо конкретной СУБД, но по умолчанию используется встроенная H2, в данной инструкции будет показано как установить и настроить систему на работу с БД Postgres. - -. Скачиваем инсталятор с официального сайта (https://www.enterprisedb.com/downloads/postgres-postgresql-downloads). - -. Запускаем установку. image:image/postgresql-installation-1.jpg[postgresql-installation] - -. Оставляем все настройки по умолчанию и устанавливаем пароль `postgres`. - -. Запускаем pgAdmin 4 и устанавливаем мастер пароль для приложения `postgres`. image:image/pgadmin-start.jpg[pgadmin-start] - -. Добавляем подключение к локальному серверу БД. - -. Выбираем доступную базу данных из списка и переходим в Query Tool, в котором выполняем sql запрос: - -[source,sql] ----- -CREATE USER "entaxy" WITH PASSWORD 'entaxy'; ----- -image:image/pgadmin-create-user.jpg[pgadmin-create-user] - -[start=7] -. Теперь в том же окне по очереди (по одной строчке) выполняем запросы для создания необходимых для Entaxy баз данных. - -[source,sql] ----- -CREATE DATABASE esb_entaxy; ----- - -[source,sql] ----- -GRANT ALL PRIVILEGES ON DATABASE esb_entaxy TO entaxy; ----- - -[source,sql] ----- -CREATE DATABASE cache; ----- - -[source,sql] ----- -GRANT ALL PRIVILEGES ON DATABASE cache TO entaxy; ----- - -На этом настройка СУБД завершена. - - -=== Установка и настройка брокера - -В этой инструкции мы рассмотрим использование брокера сообщений Artemis. - -. Скачиваем архив с официального сайта (https://activemq.apache.org/components/artemis/download/). - -. Распаковываем архив и переходим в директорию bin. - -. Запускаем в командной строке создание брокера `artemis create --user entaxy --password entaxy --allow-anonymous $ARTEMIS_HOME/brokers/entaxy-broker`. - -. После создания брокера надо открыть файл `$ARTEMIS_HOME/brokers/entaxy-broker/etc/broker.xml` и проверить, что автоматическое удаление очередей и адресов отключено: - -[source,xml] ----- - - - - false - false - - ----- - -. Запускаем брокер сообщений `$ARTEMIS_HOME/brokers/entaxy-broker/bin/artemis run` - -Установка брокера завершена. - - -=== Установка Entaxy - -. xref:#_установка_с_внешним_брокером [Выполняем установку Entaxy без брокера] - -. xref:#_настройка_entaxy_на_внешнюю_базы_данных [Перенастраиваем Entaxy на внешнюю БД], установленную на предыдущем шаге. - - -== Проверка готовности системы - -Чтобы проверить, что все сервисы Entaxy готовы к работае, открываем следующий адрес в браузере http://localhost:8181/system/health - -При полной готовности система выдаст следующую информацию: -image:image/health-check.png[] - -Если при первом запуске Entaxy Connections находится в статусе TEMPORARILY_UNAVAILABLE, необходимо перезапустить Entaxy. - -== Настройка Entaxy на внешнюю базу данных - -По умолчанию все сборки Entaxy используют встроенную БД H2. - -Для того чтобы перенестроить Entaxy на использование внешней БД, нужно выполнить следующие шаги: - -В каталоге `/etc` приложения: - -. Найти файлы `org.ops4j.datasource-entaxy.esb.cache.cfg` и `org.ops4j.datasource-entaxy.esb.storage.cfg` - -. Удалить их или переименовать путем добавления постфикса, например, `*.defaultdb`. - -. Найти файлы `org.ops4j.datasource-entaxy.esb.cache.cfg.pg` и `org.ops4j.datasource-entaxy.esb.storage.cfg.pg` и удалить постфикс `.pg` из имени. - -. Если при выполнении установки БД были указаны другие данные или была выполненна установка на другом хосте, то вводим соответствующие значения в файлах. - - -== Тестирование. - -Для проверки работоспособности платформы переходим к xref:../../connectors/uniform-exchange-service/tests/postman.adoc[инструкции по тестированию]. - - -== Кластерный запуск Entaxy - -По умолчанию Entaxy использует мультикаст для поиска компонентов кластера по сети, необходимо убедиться что настройки вашего оборудования и файервол настроены для широковещания. - -Чтобы два и более экземпляра соединились в кластер достаточно их запустить на разных хостах из одной подсети. - - -=== Настройка статичных адресов узлов кластера - -Если требуется указать статичные адреса узлов кластера поиска узлов, то это можно сделать в файле `/etc/hazelcast.xml` - -- Выключаем мультикаст `` -- Включаем ip `` - -например: -[source,xml] ----- - - 224.2.2.3 - 54327 - - - 127.0.0.1 - ----- - -Также можно задавать маски адресов: -[source,xml] ----- - - 192.168.1.* - ----- - - -=== Проверка кластера - -Чтобы понимать, что экземпляры соединились в кластер, выполняем следующую команду в одной из консолей карафа: `cluster:node-list` - -image:image/cluster-note-list.png[] - - -=== Запуск нескольких экземпляров на одном хосте - -Для того чтобы запустить несколько экземпляров системы на одном хосте, необходимо в файле `etc/entaxy.properties` изменить значения свойств: - - - entaxy.rmiRegistryPort - - entaxy.rmiServerPort - - entaxy.jmxmpPort - - entaxy.sshPort - - entaxy.org.osgi.service.http.port - - entaxy.service.port.management - - entaxy.service.port.subscription \ No newline at end of file diff --git a/documentation/monitoring/hawtio.adoc b/documentation/monitoring/hawtio.adoc deleted file mode 100644 index 4be86b2..0000000 --- a/documentation/monitoring/hawtio.adoc +++ /dev/null @@ -1,29 +0,0 @@ -= Использование hawtio для мониторинга entaxy - -hawtio доступно по адресу http://{nginx_address}/hawtio/ - -* Открываем в браузере hawtio и аутентифицируемся как karaf / karaf - -http://10.24.2.33:8181/hawtio/ - -image::screenshots/image_2021-09-30_12-43-58.png[] - -* При успешной аутентификации видим вкладку camel со всеми маршрутами и возможностью посмотреть статистику по маршрутам - -image::screenshots/image_2021-09-30_12-45-07.png[] - -* Возможность просмотреть логи - -image::screenshots/image_2021-09-30_12-45-35.png[] - -* Возможность просмотреть метрику - -image::screenshots/image_2021-09-30_12-45-55.png[] - -* Общую статистику можно увидеть на вкладке JMX, выбрав Camel Contexts (отображение данных бывает с небольшой паузой) - -image::screenshots/image_2021-09-30_12-46-36.png[] - -* Также можно увидеть визуальное отображение маршрута - -image::screenshots/image_2021-09-30_12-47-18.png[] diff --git a/documentation/monitoring/screenshots/image_2021-09-30_12-43-58.png b/documentation/monitoring/screenshots/image_2021-09-30_12-43-58.png deleted file mode 100644 index 401ea45..0000000 Binary files a/documentation/monitoring/screenshots/image_2021-09-30_12-43-58.png and /dev/null differ diff --git a/documentation/monitoring/screenshots/image_2021-09-30_12-45-07.png b/documentation/monitoring/screenshots/image_2021-09-30_12-45-07.png deleted file mode 100644 index 9706d59..0000000 Binary files a/documentation/monitoring/screenshots/image_2021-09-30_12-45-07.png and /dev/null differ diff --git a/documentation/monitoring/screenshots/image_2021-09-30_12-45-35.png b/documentation/monitoring/screenshots/image_2021-09-30_12-45-35.png deleted file mode 100644 index 6c3c9ce..0000000 Binary files a/documentation/monitoring/screenshots/image_2021-09-30_12-45-35.png and /dev/null differ diff --git a/documentation/monitoring/screenshots/image_2021-09-30_12-45-55.png b/documentation/monitoring/screenshots/image_2021-09-30_12-45-55.png deleted file mode 100644 index c4b4361..0000000 Binary files a/documentation/monitoring/screenshots/image_2021-09-30_12-45-55.png and /dev/null differ diff --git a/documentation/monitoring/screenshots/image_2021-09-30_12-46-36.png b/documentation/monitoring/screenshots/image_2021-09-30_12-46-36.png deleted file mode 100644 index 758bba1..0000000 Binary files a/documentation/monitoring/screenshots/image_2021-09-30_12-46-36.png and /dev/null differ diff --git a/documentation/monitoring/screenshots/image_2021-09-30_12-47-18.png b/documentation/monitoring/screenshots/image_2021-09-30_12-47-18.png deleted file mode 100644 index 34e39a8..0000000 Binary files a/documentation/monitoring/screenshots/image_2021-09-30_12-47-18.png and /dev/null differ diff --git a/platform/pom.xml b/platform/pom.xml index 52aabf6..ce8cb1a 100644 --- a/platform/pom.xml +++ b/platform/pom.xml @@ -1,11 +1,9 @@ - + root ru.entaxy.esb - 1.8.2.2 + 1.8.3 4.0.0 @@ -17,109 +15,13 @@ runtime - + - - install-script - - - src/main/scripts/entaxy-platform.install - - - - - - org.codehaus.mojo - license-maven-plugin - - - update-file-header - - update-file-header - - process-sources - - ${license.organizationName} - ${license.inceptionYear} - ${license.projectName} - ${license.copyrightOwners} - ${license.licenseName} + - - false - false - - **/*.json - - - - properties - - - true - true - - ${license.processStartTag} - ${license.processEndTag} - ${license.sectionDelimiter} - - - - - - - org.apache.maven.plugins - maven-resources-plugin - 3.2.0 - - - copy-resources - - validate - - copy-resources - - - ${basedir}/target/scripts - - - src/main/scripts - true - - - - - - - - org.codehaus.mojo - build-helper-maven-plugin - - - attach-script - verify - - attach-artifact - - - - - target/scripts/entaxy-platform.install - install - entaxy-platform - - - - - - - - - - + \ No newline at end of file diff --git a/platform/runtime/base/base-support/pom.xml b/platform/runtime/base/base-support/pom.xml index 771a342..e3a3724 100644 --- a/platform/runtime/base/base-support/pom.xml +++ b/platform/runtime/base/base-support/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime base - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.base base-support diff --git a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/CommonUtils.java b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/CommonUtils.java index f11b83d..d8379e2 100644 --- a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/CommonUtils.java +++ b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/CommonUtils.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * base-support * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/DependencySorter.java b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/DependencySorter.java index 8b8b773..9afde57 100644 --- a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/DependencySorter.java +++ b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/DependencySorter.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -44,11 +44,29 @@ public class DependencySorter { .collect(Collectors.toList()); if (nextObjects.isEmpty()) // TODO create more informative exception - throw new Exception("Contains unsatisfied dependencies"); + throw new UnsatisfiedDependenciesException( + origin.stream().filter(obj->!result.contains(obj)) + .collect(Collectors.toList()) + ); result.addAll(nextObjects); } return result; } + + @SuppressWarnings("serial") + public static class UnsatisfiedDependenciesException extends Exception { + + protected List objects; + + public UnsatisfiedDependenciesException(List list) { + super("Contains unsatisfied dependencies"); + this.objects.addAll(list); + } + + public List getObjects() { + return objects; + } + } } diff --git a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/FileUtils.java b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/FileUtils.java index 0dddc8a..777286a 100644 --- a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/FileUtils.java +++ b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/FileUtils.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * base-support * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/JSONUtils.java b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/JSONUtils.java index fceecb9..8808819 100644 --- a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/JSONUtils.java +++ b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/JSONUtils.java @@ -1,7 +1,7 @@ /* ~~~~~~licensing~~~~~~ * base-support * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -103,13 +103,19 @@ public class JSONUtils { return result; } + public static String getJsonRootObjectString(URL url) throws IOException { + try (BufferedReader reader = new BufferedReader(new InputStreamReader( + url.openStream(), StandardCharsets.UTF_8))){ + String data = reader + .lines() + .collect(Collectors.joining("\n")); + return data; + } + + } + public static JsonObject getJsonRootObject(URL url) throws IOException { - String metadata = new BufferedReader ( - new InputStreamReader( - url.openStream(), StandardCharsets.UTF_8)) - .lines() - .collect(Collectors.joining("\n")); - return JSONUtils.getJsonRootObject(metadata); + return JSONUtils.getJsonRootObject(getJsonRootObjectString(url)); } public static JsonObject getJsonRootObject(String jsonData) { @@ -207,6 +213,40 @@ public class JSONUtils { // System.out.println("\n -- found --\n" + currentElement.toString() + "\n"); return true; } + + public static JsonElement findElement(JsonObject jsonObject, String pathFragment) { + JsonElement result = findElement(jsonObject, pathFragment, ""); + + return result; + } + + public static JsonElement findElement(JsonObject jsonObject, String pathFragment, String parentPath) { + + for (Entry entry: jsonObject.entrySet()) { + + String currentPath = parentPath + "." + entry.getKey(); + if (currentPath.endsWith(pathFragment)) + return entry.getValue(); + + } + + for (Entry entry: jsonObject.entrySet()) { + + if (!entry.getValue().isJsonObject()) + continue; + + String currentPath = parentPath + "." + entry.getKey(); + + JsonElement currentResult = findElement(entry.getValue().getAsJsonObject(), pathFragment, currentPath); + + if (currentResult != null) + return currentResult; + } + + + return null; + } + public static class JsonTraverse { diff --git a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/BundleUtils.java b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/BundleUtils.java index c04c1bf..47c909d 100644 --- a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/BundleUtils.java +++ b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/BundleUtils.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * base-support * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/OSGIUtils.java b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/OSGIUtils.java index cb6edb3..617f3fe 100644 --- a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/OSGIUtils.java +++ b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/OSGIUtils.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * base-support * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/BundleContextAware.java b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/BundleContextAware.java index 1520a4a..5d868ca 100644 --- a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/BundleContextAware.java +++ b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/BundleContextAware.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/BundleFilter.java b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/BundleFilter.java index db3dbbb..11633a9 100644 --- a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/BundleFilter.java +++ b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/BundleFilter.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/BundleTrackerCustomizerListener.java b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/BundleTrackerCustomizerListener.java index 4c4cbcd..1724b01 100644 --- a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/BundleTrackerCustomizerListener.java +++ b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/BundleTrackerCustomizerListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/BundleTrackerUtils.java b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/BundleTrackerUtils.java index 518bb46..65df22e 100644 --- a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/BundleTrackerUtils.java +++ b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/BundleTrackerUtils.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/UniformBundleTrackerCustomizer.java b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/UniformBundleTrackerCustomizer.java index b1c4076..5a81f3e 100644 --- a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/UniformBundleTrackerCustomizer.java +++ b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/UniformBundleTrackerCustomizer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/filter/AbstractBundleFilter.java b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/filter/AbstractBundleFilter.java index 03968a0..f514743 100644 --- a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/filter/AbstractBundleFilter.java +++ b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/filter/AbstractBundleFilter.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * base-support * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/filter/BundleCapabilityFilter.java b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/filter/BundleCapabilityFilter.java index db8d413..808f0fe 100644 --- a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/filter/BundleCapabilityFilter.java +++ b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/filter/BundleCapabilityFilter.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/filter/BundleHeaderFilter.java b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/filter/BundleHeaderFilter.java index 3370be9..f338ea2 100644 --- a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/filter/BundleHeaderFilter.java +++ b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/osgi/tracker/filter/BundleHeaderFilter.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * base-support * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/xml/CommonXMLUtils.java b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/xml/CommonXMLUtils.java index 8a89bf3..ea62054 100644 --- a/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/xml/CommonXMLUtils.java +++ b/platform/runtime/base/base-support/src/main/java/ru/entaxy/platform/base/support/xml/CommonXMLUtils.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * base-support * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/branding/pom.xml b/platform/runtime/base/branding/pom.xml index 3ddbc23..e169eca 100644 --- a/platform/runtime/base/branding/pom.xml +++ b/platform/runtime/base/branding/pom.xml @@ -1,11 +1,9 @@ - + ru.entaxy.esb.platform.runtime base - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/base/branding/src/main/cfg/branding.properties b/platform/runtime/base/branding/src/main/cfg/branding.properties index f74f56e..6d8f9cf 100644 --- a/platform/runtime/base/branding/src/main/cfg/branding.properties +++ b/platform/runtime/base/branding/src/main/cfg/branding.properties @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # branding # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/config-extensions/pom.xml b/platform/runtime/base/config-extensions/pom.xml index 3d83e0c..ebb31aa 100644 --- a/platform/runtime/base/config-extensions/pom.xml +++ b/platform/runtime/base/config-extensions/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime base - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.base config-extensions diff --git a/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/ConfigLookupConfigurationPlugin.java b/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/ConfigLookupConfigurationPlugin.java index 8d8be5c..7722661 100644 --- a/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/ConfigLookupConfigurationPlugin.java +++ b/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/ConfigLookupConfigurationPlugin.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * config-plugin * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/DefaultPropertiesProvider.java b/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/DefaultPropertiesProvider.java index 8e0660f..dc7f00d 100644 --- a/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/DefaultPropertiesProvider.java +++ b/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/DefaultPropertiesProvider.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * configuration-test-1 * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/DefaultPropertiesProviderWithImmutables.java b/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/DefaultPropertiesProviderWithImmutables.java index 3248795..5db3dff 100644 --- a/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/DefaultPropertiesProviderWithImmutables.java +++ b/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/DefaultPropertiesProviderWithImmutables.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * configuration-test-1 * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/Immutables.java b/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/Immutables.java index 9c5b278..7020fe0 100644 --- a/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/Immutables.java +++ b/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/Immutables.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * configuration-test-1 * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/ImmutablesCollector.java b/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/ImmutablesCollector.java index d864023..dcedf57 100644 --- a/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/ImmutablesCollector.java +++ b/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/ImmutablesCollector.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * configuration-test-1 * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/ImmutablesConfigurationPlugin.java b/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/ImmutablesConfigurationPlugin.java index 8c2e58f..878d765 100644 --- a/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/ImmutablesConfigurationPlugin.java +++ b/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/ImmutablesConfigurationPlugin.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * configuration-test-1 * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/ImmutablesImpl.java b/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/ImmutablesImpl.java index 2da78f4..8ea41b4 100644 --- a/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/ImmutablesImpl.java +++ b/platform/runtime/base/config-extensions/src/main/java/ru/entaxy/platform/base/config/ImmutablesImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * configuration-test-1 * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/adapters-core/pom.xml b/platform/runtime/base/connecting/adapter/adapters-core/pom.xml index 7fe3528..a6a0521 100644 --- a/platform/runtime/base/connecting/adapter/adapters-core/pom.xml +++ b/platform/runtime/base/connecting/adapter/adapters-core/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.base.connecting adapter - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/api/Adapter.java b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/api/Adapter.java index 6391aef..a88eda5 100644 --- a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/api/Adapter.java +++ b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/api/Adapter.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * adapters-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/impl/DefaultAdapter.java b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/impl/DefaultAdapter.java index 046e449..491d173 100644 --- a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/impl/DefaultAdapter.java +++ b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/impl/DefaultAdapter.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * adapters-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/management/AdapterMBean.java b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/management/AdapterMBean.java index 9830732..ccadeed 100644 --- a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/management/AdapterMBean.java +++ b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/management/AdapterMBean.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * adapters-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/management/AdapterMBeanImpl.java b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/management/AdapterMBeanImpl.java index 70befc0..e13a761 100644 --- a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/management/AdapterMBeanImpl.java +++ b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/management/AdapterMBeanImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * adapters-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/management/AdaptersMBean.java b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/management/AdaptersMBean.java index f3ab725..6528764 100644 --- a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/management/AdaptersMBean.java +++ b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/management/AdaptersMBean.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * adapters-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/management/AdaptersMBeanImpl.java b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/management/AdaptersMBeanImpl.java index f286f69..d9b3706 100644 --- a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/management/AdaptersMBeanImpl.java +++ b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/management/AdaptersMBeanImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * adapters-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/metadata/AdapterFieldElement.java b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/metadata/AdapterFieldElement.java index 8ed583b..fb7485e 100644 --- a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/metadata/AdapterFieldElement.java +++ b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/metadata/AdapterFieldElement.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * adapters-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/metadata/AdapterGeneratorElement.java b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/metadata/AdapterGeneratorElement.java index a72affe..9644a2b 100644 --- a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/metadata/AdapterGeneratorElement.java +++ b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/metadata/AdapterGeneratorElement.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * adapters-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/metadata/AdapterMetadataElement.java b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/metadata/AdapterMetadataElement.java index 3c4803f..7257ea5 100644 --- a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/metadata/AdapterMetadataElement.java +++ b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/metadata/AdapterMetadataElement.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * adapters-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/tracker/AdapterHelper.java b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/tracker/AdapterHelper.java index 3eb4b07..2de54af 100644 --- a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/tracker/AdapterHelper.java +++ b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/tracker/AdapterHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * adapters-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/tracker/AdapterTracker.java b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/tracker/AdapterTracker.java index 23c8bd0..c3c8767 100644 --- a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/tracker/AdapterTracker.java +++ b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/tracker/AdapterTracker.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * adapters-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/tracker/AdapterTrackerActivator.java b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/tracker/AdapterTrackerActivator.java index e23be38..700d9b6 100644 --- a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/tracker/AdapterTrackerActivator.java +++ b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/tracker/AdapterTrackerActivator.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * adapters-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/util/AdapterUtil.java b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/util/AdapterUtil.java index c74dcec..8a96ae4 100644 --- a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/util/AdapterUtil.java +++ b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/util/AdapterUtil.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * adapters-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/util/ConnectionUsageType.java b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/util/ConnectionUsageType.java index c42a6b8..702bef6 100644 --- a/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/util/ConnectionUsageType.java +++ b/platform/runtime/base/connecting/adapter/adapters-core/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/adapter/core/util/ConnectionUsageType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * adapters-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/amqp-adapter/pom.xml b/platform/runtime/base/connecting/adapter/amqp-adapter/pom.xml index 73ded03..f6b272f 100644 --- a/platform/runtime/base/connecting/adapter/amqp-adapter/pom.xml +++ b/platform/runtime/base/connecting/adapter/amqp-adapter/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.base.connecting adapter - 1.8.2.2 + 1.8.3 4.0.0 @@ -30,7 +29,7 @@ true - + diff --git a/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/from.ftl b/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/from.ftl index 1d2e53b..a5510fc 100644 --- a/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/from.ftl +++ b/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/from.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ amqp-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/init.ftl b/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/init.ftl index 3a83961..e79a8ae 100644 --- a/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/init.ftl +++ b/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/init.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ amqp-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/queryParameters.ftl b/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/queryParameters.ftl index e594c1d..2ba3a68 100644 --- a/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/queryParameters.ftl +++ b/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/queryParameters.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ amqp-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/ref.ftl b/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/ref.ftl index 7e50fe5..2f2d54e 100644 --- a/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/ref.ftl +++ b/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/ref.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ amqp-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/to.ftl b/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/to.ftl index 944aaf4..0c4f8ff 100644 --- a/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/to.ftl +++ b/platform/runtime/base/connecting/adapter/amqp-adapter/src/main/resources/template/to.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ amqp-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/artemis-adapter/pom.xml b/platform/runtime/base/connecting/adapter/artemis-adapter/pom.xml index a39e418..0442916 100644 --- a/platform/runtime/base/connecting/adapter/artemis-adapter/pom.xml +++ b/platform/runtime/base/connecting/adapter/artemis-adapter/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.base.connecting adapter - 1.8.2.2 + 1.8.3 4.0.0 @@ -30,7 +29,7 @@ true - + diff --git a/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/from.ftl b/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/from.ftl index 5a3bc37..05006ef 100644 --- a/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/from.ftl +++ b/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/from.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ artemis-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/init.ftl b/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/init.ftl index e78e0c3..a395b93 100644 --- a/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/init.ftl +++ b/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/init.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ artemis-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/queryParameters.ftl b/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/queryParameters.ftl index 1ab0b81..5af6d0b 100644 --- a/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/queryParameters.ftl +++ b/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/queryParameters.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ artemis-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/ref.ftl b/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/ref.ftl index 0925da0..21cb4c7 100644 --- a/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/ref.ftl +++ b/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/ref.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ artemis-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/to.ftl b/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/to.ftl index 58ac7c2..e566b18 100644 --- a/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/to.ftl +++ b/platform/runtime/base/connecting/adapter/artemis-adapter/src/main/resources/template/to.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ artemis-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/pom.xml b/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/pom.xml index ba68dcb..d967f13 100644 --- a/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/pom.xml +++ b/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.base.connecting adapter - 1.8.2.2 + 1.8.3 4.0.0 @@ -30,7 +29,7 @@ true - + diff --git a/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/from.ftl b/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/from.ftl index f213d9f..957026e 100644 --- a/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/from.ftl +++ b/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/from.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ artemis-amqp-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/init.ftl b/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/init.ftl index 88330f8..ea4182e 100644 --- a/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/init.ftl +++ b/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/init.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ artemis-amqp-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/queryParameters.ftl b/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/queryParameters.ftl index 0bd5124..c80c9f2 100644 --- a/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/queryParameters.ftl +++ b/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/queryParameters.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ artemis-amqp-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/ref.ftl b/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/ref.ftl index 4aafb40..2209bd7 100644 --- a/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/ref.ftl +++ b/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/ref.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ artemis-amqp-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/to.ftl b/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/to.ftl index 55adffb..2d8d278 100644 --- a/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/to.ftl +++ b/platform/runtime/base/connecting/adapter/artemis-amqp-adapter/src/main/resources/template/to.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ artemis-amqp-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/file-adapter/pom.xml b/platform/runtime/base/connecting/adapter/file-adapter/pom.xml index 6d33a62..0bd8536 100644 --- a/platform/runtime/base/connecting/adapter/file-adapter/pom.xml +++ b/platform/runtime/base/connecting/adapter/file-adapter/pom.xml @@ -4,7 +4,7 @@ ru.entaxy.esb.platform.runtime.base.connecting adapter - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/base/connecting/adapter/file-adapter/src/main/java/ru/entaxy/platform/adapter/file/ExtendedFileComponent.java b/platform/runtime/base/connecting/adapter/file-adapter/src/main/java/ru/entaxy/platform/adapter/file/ExtendedFileComponent.java index d571e02..f989aed 100644 --- a/platform/runtime/base/connecting/adapter/file-adapter/src/main/java/ru/entaxy/platform/adapter/file/ExtendedFileComponent.java +++ b/platform/runtime/base/connecting/adapter/file-adapter/src/main/java/ru/entaxy/platform/adapter/file/ExtendedFileComponent.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * file-adapter * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/ru/entaxy/factory/file-adapter.json b/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/ru/entaxy/factory/file-adapter.json index 9b65317..8074222 100644 --- a/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/ru/entaxy/factory/file-adapter.json +++ b/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/ru/entaxy/factory/file-adapter.json @@ -1,2746 +1,2884 @@ { - "factory": { - "id": "file-adapter", - "type": "entaxy.runtime.connection", - "label": "file,core", - "description": "Read and write files.", - "category": "adapter" - }, - "entaxy.runtime.connection": {}, - "fields": { - "bridgeErrorHandler": { - "displayName": "Bridge Error Handler", - "description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored.", - "label": "consumer", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "consumer", - "##others": { - "old": { - "kind": "property", - "javaType": "boolean", - "deprecated": false - }, - "new": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - } - }, - "lazyStartProducer": { - "displayName": "Lazy Start Producer", - "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel\u0027s routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing.", - "label": "producer", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "producer", - "##others": { - "old": { - "kind": "property", - "javaType": "boolean", - "deprecated": false - }, - "new": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - } - }, - "basicPropertyBinding": { - "displayName": "Basic Property Binding", - "description": "Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities", - "label": "advanced", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "advanced", - "##others": { - "old": { - "kind": "property", - "javaType": "boolean", - "deprecated": false - }, - "new": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - } - }, - "directoryName": { - "displayName": "Directory Name", - "description": "The starting directory", - "label": "", - "type": "string", - "required": true, - "hidden": false, - "group": "common", - "##others": { - "kind": "path", - "javaType": "java.io.File", - "deprecated": false, - "deprecationNote": "" - } - }, - "charset": { - "displayName": "Charset", - "description": "This option is used to specify the encoding of the file. You can use this on the consumer, to specify the encodings of the files, which allow Camel to know the charset it should load the file content in case the file content is being accessed. Likewise when writing a file, you can use this option to specify which charset to write the file as well. Do mind that when writing the file Camel may have to read the message content into memory to be able to convert the data into the configured charset, so do not use this if you have big messages.", - "label": "", - "type": "string", - "required": false, - "hidden": false, - "group": "common", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "doneFileName": { - "displayName": "Done File Name", - "description": "Producer: If provided, then Camel will write a 2nd done file when the original file has been written. The done file will be empty. This option configures what file name to use. Either you can specify a fixed name. Or you can use dynamic placeholders. The done file will always be written in the same folder as the original file. Consumer: If provided, Camel will only consume files if a done file exists. This option configures what file name to use. Either you can specify a fixed name. Or you can use dynamic placeholders.The done file is always expected in the same folder as the original file. Only ${file.name} and ${file.name.next} is supported as dynamic placeholders.", - "label": "", - "type": "string", - "required": false, - "hidden": false, - "group": "common", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "fileName": { - "displayName": "File Name", - "description": "Use Expression such as File Language to dynamically set the filename. For consumers, it\u0027s used as a filename filter. For producers, it\u0027s used to evaluate the filename to write. If an expression is set, it take precedence over the CamelFileName header. (Note: The header itself can also be an Expression). The expression options support both String and Expression types. If the expression is a String type, it is always evaluated using the File Language. If the expression is an Expression type, the specified Expression type is used - this allows you, for instance, to use OGNL expressions. For the consumer, you can use it to filter filenames, so you can for instance consume today\u0027s file using the File Language syntax: mydata-${date:now:yyyyMMdd}.txt. The producers support the CamelOverruleFileName header which takes precedence over any existing CamelFileName header; the CamelOverruleFileName is a header that is used only once, and makes it easier as this avoids to temporary store CamelFileName and have to restore it afterwards.", - "label": "", - "type": "string", - "required": false, - "hidden": false, - "group": "common", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "delete": { - "displayName": "Delete", - "description": "If true, the file will be deleted after it is processed successfully.", - "label": "consumer", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "consumer", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "moveFailed": { - "displayName": "Move Failed", - "description": "Sets the move failure expression based on Simple language. For example, to move files into a .error subdirectory use: .error. Note: When moving the files to the fail location Camel will handle the error and will not pick up the file again.", - "label": "consumer", - "type": "string", - "required": false, - "hidden": false, - "group": "consumer", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "noop": { - "displayName": "Noop", - "description": "If true, the file is not moved or deleted in any way. This option is good for readonly data, or for ETL type requirements. If noop\u003dtrue, Camel will set idempotent\u003dtrue as well, to avoid consuming the same files over and over again.", - "label": "consumer", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "consumer", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "preMove": { - "displayName": "Pre Move", - "description": "Expression (such as File Language) used to dynamically set the filename when moving it before processing. For example to move in-progress files into the order directory set this value to order.", - "label": "consumer", - "type": "string", - "required": false, - "hidden": false, - "group": "consumer", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "preSort": { - "displayName": "Pre Sort", - "description": "When pre-sort is enabled then the consumer will sort the file and directory names during polling, that was retrieved from the file system. You may want to do this in case you need to operate on the files in a sorted order. The pre-sort is executed before the consumer starts to filter, and accept files to process by Camel. This option is default\u003dfalse meaning disabled.", - "label": "consumer", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "consumer", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "recursive": { - "displayName": "Recursive", - "description": "If a directory, will look for files in all the sub-directories as well.", - "label": "consumer", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "consumer", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "sendEmptyMessageWhenIdle": { - "displayName": "Send Empty Message When Idle", - "description": "If the polling consumer did not poll any files, you can enable this option to send an empty message (no body) instead.", - "label": "consumer", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "consumer", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "directoryMustExist": { - "displayName": "Directory Must Exist", - "description": "Similar to the startingDirectoryMustExist option but this applies during polling (after starting the consumer).", - "label": "consumer,advanced", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "consumer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "exceptionHandler": { - "displayName": "Exception Handler", - "description": "To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this option is not in use. By default the consumer will deal with exceptions, that will be logged at WARN or ERROR level and ignored.", - "label": "consumer,advanced", - "type": "object", - "required": false, - "hidden": false, - "group": "consumer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "org.apache.camel.spi.ExceptionHandler", - "optionalPrefix": "consumer.", - "deprecated": false - } - }, - "exchangePattern": { - "displayName": "Exchange Pattern", - "description": "Sets the exchange pattern when the consumer creates an exchange.", - "label": "consumer,advanced", - "type": "object", - "required": false, - "hidden": false, - "group": "consumer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "org.apache.camel.ExchangePattern", - "enum": [ - "InOnly", - "InOut", - "InOptionalOut" - ], - "deprecated": false - } - }, - "extendedAttributes": { - "displayName": "Extended Attributes", - "description": "To define which file attributes of interest. Like posix:permissions,posix:owner,basic:lastAccessTime, it supports basic wildcard like posix:, basic:lastAccessTime", - "label": "consumer,advanced", - "type": "string", - "required": false, - "hidden": false, - "group": "consumer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "inProgressRepository": { - "displayName": "In Progress Repository", - "description": "A pluggable in-progress repository org.apache.camel.spi.IdempotentRepository. The in-progress repository is used to account the current in progress files being consumed. By default a memory based repository is used.", - "label": "consumer,advanced", - "type": "object", - "required": false, - "hidden": false, - "group": "consumer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "org.apache.camel.spi.IdempotentRepository", - "deprecated": false - } - }, - "localWorkDirectory": { - "displayName": "Local Work Directory", - "description": "When consuming, a local work directory can be used to store the remote file content directly in local files, to avoid loading the content into memory. This is beneficial, if you consume a very big remote file and thus can conserve memory.", - "label": "consumer,advanced", - "type": "string", - "required": false, - "hidden": false, - "group": "consumer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "onCompletionExceptionHandler": { - "displayName": "On Completion Exception Handler", - "description": "To use a custom org.apache.camel.spi.ExceptionHandler to handle any thrown exceptions that happens during the file on completion process where the consumer does either a commit or rollback. The default implementation will log any exception at WARN level and ignore.", - "label": "consumer,advanced", - "type": "object", - "required": false, - "hidden": false, - "group": "consumer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "org.apache.camel.spi.ExceptionHandler", - "deprecated": false - } - }, - "pollStrategy": { - "displayName": "Poll Strategy", - "description": "A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing you to provide your custom implementation to control error handling usually occurred during the poll operation before an Exchange have been created and being routed in Camel.", - "label": "consumer,advanced", - "type": "object", - "required": false, - "hidden": false, - "group": "consumer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "org.apache.camel.spi.PollingConsumerPollStrategy", - "deprecated": false - } - }, - "probeContentType": { - "displayName": "Probe Content Type", - "description": "Whether to enable probing of the content type. If enable then the consumer uses Files#probeContentType(java.nio.file.Path) to determine the content-type of the file, and store that as a header with key Exchange#FILE_CONTENT_TYPE on the Message.", - "label": "consumer,advanced", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "consumer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "processStrategy": { - "displayName": "Process Strategy", - "description": "A pluggable org.apache.camel.component.file.GenericFileProcessStrategy allowing you to implement your own readLock option or similar. Can also be used when special conditions must be met before a file can be consumed, such as a special ready file exists. If this option is set then the readLock option does not apply.", - "label": "consumer,advanced", - "type": "object", - "required": false, - "hidden": false, - "group": "consumer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "org.apache.camel.component.file.GenericFileProcessStrategy\u003cjava.io.File\u003e", - "deprecated": false - } - }, - "startingDirectoryMustExist": { - "displayName": "Starting Directory Must Exist", - "description": "Whether the starting directory must exist. Mind that the autoCreate option is default enabled, which means the starting directory is normally auto created if it doesn\u0027t exist. You can disable autoCreate and enable this to ensure the starting directory must exist. Will thrown an exception if the directory doesn\u0027t exist.", - "label": "consumer,advanced", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "consumer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "startingDirectoryMustHaveAccess": { - "displayName": "Starting Directory Must Have Access", - "description": "Whether the starting directory has access permissions. Mind that the startingDirectoryMustExist parameter must be set to true in order to verify that the directory exists. Will thrown an exception if the directory doesn\u0027t have read and write permissions.", - "label": "consumer,advanced", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "consumer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "appendChars": { - "displayName": "Append Chars", - "description": "Used to append characters (text) after writing files. This can for example be used to add new lines or other separators when writing and appending to existing files. To specify new-line (slash-n or slash-r) or tab (slash-t) characters then escape with an extra slash, eg slash-slash-n.", - "label": "producer", - "type": "string", - "required": false, - "hidden": false, - "group": "producer", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "fileExist": { - "displayName": "File Exist", - "description": "What to do if a file already exists with the same name. Override, which is the default, replaces the existing file. - Append - adds content to the existing file. - Fail - throws a GenericFileOperationException, indicating that there is already an existing file. - Ignore - silently ignores the problem and does not override the existing file, but assumes everything is okay. - Move - option requires to use the moveExisting option to be configured as well. The option eagerDeleteTargetFile can be used to control what to do if an moving the file, and there exists already an existing file, otherwise causing the move operation to fail. The Move option will move any existing files, before writing the target file. - TryRename is only applicable if tempFileName option is in use. This allows to try renaming the file from the temporary name to the actual name, without doing any exists check. This check may be faster on some file systems and especially FTP servers.", - "label": "producer", - "type": "object", - "required": false, - "hidden": false, - "defaultValue": "Override", - "group": "producer", - "##others": { - "kind": "parameter", - "javaType": "org.apache.camel.component.file.GenericFileExist", - "enum": [ - "Override", - "Append", - "Fail", - "Ignore", - "Move", - "TryRename" - ], - "deprecated": false - } - }, - "flatten": { - "displayName": "Flatten", - "description": "Flatten is used to flatten the file name path to strip any leading paths, so it\u0027s just the file name. This allows you to consume recursively into sub-directories, but when you eg write the files to another directory they will be written in a single directory. Setting this to true on the producer enforces that any file name in CamelFileName header will be stripped for any leading paths.", - "label": "producer", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "producer", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "jailStartingDirectory": { - "displayName": "Jail Starting Directory", - "description": "Used for jailing (restricting) writing files to the starting directory (and sub) only. This is enabled by default to not allow Camel to write files to outside directories (to be more secured out of the box). You can turn this off to allow writing files to directories outside the starting directory, such as parent or root folders.", - "label": "producer", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": "true", - "group": "producer", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "moveExisting": { - "displayName": "Move Existing", - "description": "Expression (such as File Language) used to compute file name to use when fileExist\u003dMove is configured. To move files into a backup subdirectory just enter backup. This option only supports the following File Language tokens: file:name, file:name.ext, file:name.noext, file:onlyname, file:onlyname.noext, file:ext, and file:parent. Notice the file:parent is not supported by the FTP component, as the FTP component can only move any existing files to a relative directory based on current dir as base.", - "label": "producer", - "type": "string", - "required": false, - "hidden": false, - "group": "producer", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "tempFileName": { - "displayName": "Temp File Name", - "description": "The same as tempPrefix option but offering a more fine grained control on the naming of the temporary filename as it uses the File Language. The location for tempFilename is relative to the final file location in the option \u0027fileName\u0027, not the target directory in the base uri. For example if option fileName includes a directory prefix: dir/finalFilename then tempFileName is relative to that subdirectory dir.", - "label": "producer", - "type": "string", - "required": false, - "hidden": false, - "group": "producer", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "tempPrefix": { - "displayName": "Temp Prefix", - "description": "This option is used to write the file using a temporary name and then, after the write is complete, rename it to the real name. Can be used to identify files being written and also avoid consumers (not using exclusive read locks) reading in progress files. Is often used by FTP when uploading big files.", - "label": "producer", - "type": "string", - "required": false, - "hidden": false, - "group": "producer", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "allowNullBody": { - "displayName": "Allow Null Body", - "description": "Used to specify if a null body is allowed during file writing. If set to true then an empty file will be created, when set to false, and attempting to send a null body to the file component, a GenericFileWriteException of \u0027Cannot write null body to file.\u0027 will be thrown. If the fileExist option is set to \u0027Override\u0027, then the file will be truncated, and if set to append the file will remain unchanged.", - "label": "producer,advanced", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "producer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "chmod": { - "displayName": "Chmod", - "description": "Specify the file permissions which is sent by the producer, the chmod value must be between 000 and 777; If there is a leading digit like in 0755 we will ignore it.", - "label": "producer,advanced", - "type": "string", - "required": false, - "hidden": false, - "group": "producer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "chmodDirectory": { - "displayName": "Chmod Directory", - "description": "Specify the directory permissions used when the producer creates missing directories, the chmod value must be between 000 and 777; If there is a leading digit like in 0755 we will ignore it.", - "label": "producer,advanced", - "type": "string", - "required": false, - "hidden": false, - "group": "producer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "eagerDeleteTargetFile": { - "displayName": "Eager Delete Target File", - "description": "Whether or not to eagerly delete any existing target file. This option only applies when you use fileExists\u003dOverride and the tempFileName option as well. You can use this to disable (set it to false) deleting the target file before the temp file is written. For example you may write big files and want the target file to exists during the temp file is being written. This ensure the target file is only deleted until the very last moment, just before the temp file is being renamed to the target filename. This option is also used to control whether to delete any existing files when fileExist\u003dMove is enabled, and an existing file exists. If this option copyAndDeleteOnRenameFails false, then an exception will be thrown if an existing file existed, if its true, then the existing file is deleted before the move operation.", - "label": "producer,advanced", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": "true", - "group": "producer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "forceWrites": { - "displayName": "Force Writes", - "description": "Whether to force syncing writes to the file system. You can turn this off if you do not want this level of guarantee, for example if writing to logs / audit logs etc; this would yield better performance.", - "label": "producer,advanced", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": "true", - "group": "producer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "keepLastModified": { - "displayName": "Keep Last Modified", - "description": "Will keep the last modified timestamp from the source file (if any). Will use the Exchange.FILE_LAST_MODIFIED header to located the timestamp. This header can contain either a java.util.Date or long with the timestamp. If the timestamp exists and the option is enabled it will set this timestamp on the written file. Note: This option only applies to the file producer. You cannot use this option with any of the ftp producers.", - "label": "producer,advanced", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "producer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "moveExistingFileStrategy": { - "displayName": "Move Existing File Strategy", - "description": "Strategy (Custom Strategy) used to move file with special naming token to use when fileExist\u003dMove is configured. By default, there is an implementation used if no custom strategy is provided", - "label": "producer,advanced", - "type": "object", - "required": false, - "hidden": false, - "group": "producer (advanced)", - "##others": { - "kind": "parameter", - "javaType": "org.apache.camel.component.file.strategy.FileMoveExistingStrategy", - "deprecated": false - } - }, - "autoCreate": { - "displayName": "Auto Create", - "description": "Automatically create missing directories in the file\u0027s pathname. For the file consumer, that means creating the starting directory. For the file producer, it means the directory the files should be written to.", - "label": "advanced", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": "true", - "group": "advanced", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "bufferSize": { - "displayName": "Buffer Size", - "description": "Buffer size in bytes used for writing files (or in case of FTP for downloading and uploading files).", - "label": "advanced", - "type": "integer", - "required": false, - "hidden": false, - "defaultValue": "131072", - "group": "advanced", - "##others": { - "kind": "parameter", - "javaType": "int", - "deprecated": false - } - }, - "copyAndDeleteOnRenameFail": { - "displayName": "Copy And Delete On Rename Fail", - "description": "Whether to fallback and do a copy and delete file, in case the file could not be renamed directly. This option is not available for the FTP component.", - "label": "advanced", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": "true", - "group": "advanced", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "renameUsingCopy": { - "displayName": "Rename Using Copy", - "description": "Perform rename operations using a copy and delete strategy. This is primarily used in environments where the regular rename operation is unreliable (e.g. across different file systems or networks). This option takes precedence over the copyAndDeleteOnRenameFail parameter that will automatically fall back to the copy and delete strategy, but only after additional delays.", - "label": "advanced", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "advanced", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "synchronous": { - "displayName": "Synchronous", - "description": "Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported).", - "label": "advanced", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": "false", - "group": "advanced", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "antExclude": { - "displayName": "Ant Exclude", - "description": "Ant style filter exclusion. If both antInclude and antExclude are used, antExclude takes precedence over antInclude. Multiple exclusions may be specified in comma-delimited format.", - "label": "consumer,filter", - "type": "string", - "required": false, - "hidden": false, - "group": "filter", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "antFilterCaseSensitive": { - "displayName": "Ant Filter Case Sensitive", - "description": "Sets case sensitive flag on ant filter.", - "label": "consumer,filter", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": "true", - "group": "filter", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "antInclude": { - "displayName": "Ant Include", - "description": "Ant style filter inclusion. Multiple inclusions may be specified in comma-delimited format.", - "label": "consumer,filter", - "type": "string", - "required": false, - "hidden": false, - "group": "filter", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "eagerMaxMessagesPerPoll": { - "displayName": "Eager Max Messages Per Poll", - "description": "Allows for controlling whether the limit from maxMessagesPerPoll is eager or not. If eager then the limit is during the scanning of files. Where as false would scan all files, and then perform sorting. Setting this option to false allows for sorting all files first, and then limit the poll. Mind that this requires a higher memory usage as all file details are in memory to perform the sorting.", - "label": "consumer,filter", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": "true", - "group": "filter", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "exclude": { - "displayName": "Exclude", - "description": "Is used to exclude files, if filename matches the regex pattern (matching is case in-senstive). Notice if you use symbols such as plus sign and others you would need to configure this using the RAW() syntax if configuring this as an endpoint uri. See more details at configuring endpoint uris", - "label": "consumer,filter", - "type": "string", - "required": false, - "hidden": false, - "group": "filter", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "filter": { - "displayName": "Filter", - "description": "Pluggable filter as a org.apache.camel.component.file.GenericFileFilter class. Will skip files if filter returns false in its accept() method.", - "label": "consumer,filter", - "type": "object", - "required": false, - "hidden": false, - "group": "filter", - "##others": { - "kind": "parameter", - "javaType": "org.apache.camel.component.file.GenericFileFilter\u003cjava.io.File\u003e", - "deprecated": false - } - }, - "filterDirectory": { - "displayName": "Filter Directory", - "description": "Filters the directory based on Simple language. For example to filter on current date, you can use a simple date pattern such as ${date:now:yyyMMdd}", - "label": "consumer,filter", - "type": "string", - "required": false, - "hidden": false, - "group": "filter", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "filterFile": { - "displayName": "Filter File", - "description": "Filters the file based on Simple language. For example to filter on file size, you can use ${file:size} 5000", - "label": "consumer,filter", - "type": "string", - "required": false, - "hidden": false, - "group": "filter", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "idempotent": { - "displayName": "Idempotent", - "description": "Option to use the Idempotent Consumer EIP pattern to let Camel skip already processed files. Will by default use a memory based LRUCache that holds 1000 entries. If noop\u003dtrue then idempotent will be enabled as well to avoid consuming the same files over and over again.", - "label": "consumer,filter", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": "false", - "group": "filter", - "##others": { - "kind": "parameter", - "javaType": "java.lang.Boolean", - "deprecated": false - } - }, - "idempotentKey": { - "displayName": "Idempotent Key", - "description": "To use a custom idempotent key. By default the absolute path of the file is used. You can use the File Language, for example to use the file name and file size, you can do: idempotentKey\u003d${file:name}-${file:size}", - "label": "consumer,filter", - "type": "string", - "required": false, - "hidden": false, - "group": "filter", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "idempotentRepository": { - "displayName": "Idempotent Repository", - "description": "A pluggable repository org.apache.camel.spi.IdempotentRepository which by default use MemoryMessageIdRepository if none is specified and idempotent is true.", - "label": "consumer,filter", - "type": "object", - "required": false, - "hidden": false, - "group": "filter", - "##others": { - "kind": "parameter", - "javaType": "org.apache.camel.spi.IdempotentRepository", - "deprecated": false - } - }, - "include": { - "displayName": "Include", - "description": "Is used to include files, if filename matches the regex pattern (matching is case in-sensitive). Notice if you use symbols such as plus sign and others you would need to configure this using the RAW() syntax if configuring this as an endpoint uri. See more details at configuring endpoint uris", - "label": "consumer,filter", - "type": "string", - "required": false, - "hidden": false, - "group": "filter", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "maxDepth": { - "displayName": "Max Depth", - "description": "The maximum depth to traverse when recursively processing a directory.", - "label": "consumer,filter", - "type": "integer", - "required": false, - "hidden": false, - "defaultValue": "2147483647", - "group": "filter", - "##others": { - "kind": "parameter", - "javaType": "int", - "deprecated": false - } - }, - "maxMessagesPerPoll": { - "displayName": "Max Messages Per Poll", - "description": "To define a maximum messages to gather per poll. By default no maximum is set. Can be used to set a limit of e.g. 1000 to avoid when starting up the server that there are thousands of files. Set a value of 0 or negative to disabled it. Notice: If this option is in use then the File and FTP components will limit before any sorting. For example if you have 100000 files and use maxMessagesPerPoll\u003d500, then only the first 500 files will be picked up, and then sorted. You can use the eagerMaxMessagesPerPoll option and set this to false to allow to scan all files first and then sort afterwards.", - "label": "consumer,filter", - "type": "integer", - "required": false, - "hidden": false, - "group": "filter", - "##others": { - "kind": "parameter", - "javaType": "int", - "deprecated": false - } - }, - "minDepth": { - "displayName": "Min Depth", - "description": "The minimum depth to start processing when recursively processing a directory. Using minDepth\u003d1 means the base directory. Using minDepth\u003d2 means the first sub directory.", - "label": "consumer,filter", - "type": "integer", - "required": false, - "hidden": false, - "group": "filter", - "##others": { - "kind": "parameter", - "javaType": "int", - "deprecated": false - } - }, - "move": { - "displayName": "Move", - "description": "Expression (such as Simple Language) used to dynamically set the filename when moving it after processing. To move files into a .done subdirectory just enter .done.", - "label": "consumer,filter", - "type": "string", - "required": false, - "hidden": false, - "group": "filter", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "exclusiveReadLockStrategy": { - "displayName": "Exclusive Read Lock Strategy", - "description": "Pluggable read-lock as a org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy implementation.", - "label": "consumer,lock", - "type": "object", - "required": false, - "hidden": false, - "group": "lock", - "##others": { - "kind": "parameter", - "javaType": "org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy\u003cjava.io.File\u003e", - "deprecated": false - } - }, - "readLock": { - "displayName": "Read Lock", - "description": "Used by consumer, to only poll the files if it has exclusive read-lock on the file (i.e. the file is not in-progress or being written). Camel will wait until the file lock is granted. This option provides the build in strategies: - none - No read lock is in use - markerFile - Camel creates a marker file (fileName.camelLock) and then holds a lock on it. This option is not available for the FTP component - changed - Changed is using file length/modification timestamp to detect whether the file is currently being copied or not. Will at least use 1 sec to determine this, so this option cannot consume files as fast as the others, but can be more reliable as the JDK IO API cannot always determine whether a file is currently being used by another process. The option readLockCheckInterval can be used to set the check frequency. - fileLock - is for using java.nio.channels.FileLock. This option is not avail for Windows OS and the FTP component. This approach should be avoided when accessing a remote file system via a mount/share unless that file system supports distributed file locks. - rename - rename is for using a try to rename the file as a test if we can get exclusive read-lock. - idempotent - (only for file component) idempotent is for using a idempotentRepository as the read-lock. This allows to use read locks that supports clustering if the idempotent repository implementation supports that. - idempotent-changed - (only for file component) idempotent-changed is for using a idempotentRepository and changed as the combined read-lock. This allows to use read locks that supports clustering if the idempotent repository implementation supports that. - idempotent-rename - (only for file component) idempotent-rename is for using a idempotentRepository and rename as the combined read-lock. This allows to use read locks that supports clustering if the idempotent repository implementation supports that.Notice: The various read locks is not all suited to work in clustered mode, where concurrent consumers on different nodes is competing for the same files on a shared file system. The markerFile using a close to atomic operation to create the empty marker file, but its not guaranteed to work in a cluster. The fileLock may work better but then the file system need to support distributed file locks, and so on. Using the idempotent read lock can support clustering if the idempotent repository supports clustering, such as Hazelcast Component or Infinispan.", - "label": "consumer,lock", - "type": "string", - "required": false, - "hidden": false, - "defaultValue": "none", - "group": "lock", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "enum": [ - "none", - "markerFile", - "fileLock", - "rename", - "changed", - "idempotent", - "idempotent-changed", - "idempotent-rename" - ], - "deprecated": false - } - }, - "readLockCheckInterval": { - "displayName": "Read Lock Check Interval", - "description": "Interval in millis for the read-lock, if supported by the read lock. This interval is used for sleeping between attempts to acquire the read lock. For example when using the changed read lock, you can set a higher interval period to cater for slow writes. The default of 1 sec. may be too fast if the producer is very slow writing the file. Notice: For FTP the default readLockCheckInterval is 5000. The readLockTimeout value must be higher than readLockCheckInterval, but a rule of thumb is to have a timeout that is at least 2 or more times higher than the readLockCheckInterval. This is needed to ensure that amble time is allowed for the read lock process to try to grab the lock before the timeout was hit.", - "label": "consumer,lock", - "type": "integer", - "required": false, - "hidden": false, - "defaultValue": "1000", - "group": "lock", - "##others": { - "kind": "parameter", - "javaType": "long", - "deprecated": false - } - }, - "readLockDeleteOrphanLockFiles": { - "displayName": "Read Lock Delete Orphan Lock Files", - "description": "Whether or not read lock with marker files should upon startup delete any orphan read lock files, which may have been left on the file system, if Camel was not properly shutdown (such as a JVM crash). If turning this option to false then any orphaned lock file will cause Camel to not attempt to pickup that file, this could also be due another node is concurrently reading files from the same shared directory.", - "label": "consumer,lock", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": "true", - "group": "lock", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "readLockIdempotentReleaseAsync": { - "displayName": "Read Lock Idempotent Release Async", - "description": "Whether the delayed release task should be synchronous or asynchronous. See more details at the readLockIdempotentReleaseDelay option.", - "label": "consumer,lock", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "lock", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "readLockIdempotentReleaseAsyncPoolSize": { - "displayName": "Read Lock Idempotent Release Async Pool Size", - "description": "The number of threads in the scheduled thread pool when using asynchronous release tasks. Using a default of 1 core threads should be sufficient in almost all use-cases, only set this to a higher value if either updating the idempotent repository is slow, or there are a lot of files to process. This option is not in-use if you use a shared thread pool by configuring the readLockIdempotentReleaseExecutorService option. See more details at the readLockIdempotentReleaseDelay option.", - "label": "consumer,lock", - "type": "integer", - "required": false, - "hidden": false, - "group": "lock", - "##others": { - "kind": "parameter", - "javaType": "int", - "deprecated": false - } - }, - "readLockIdempotentReleaseDelay": { - "displayName": "Read Lock Idempotent Release Delay", - "description": "Whether to delay the release task for a period of millis. This can be used to delay the release tasks to expand the window when a file is regarded as read-locked, in an active/active cluster scenario with a shared idempotent repository, to ensure other nodes cannot potentially scan and acquire the same file, due to race-conditions. By expanding the time-window of the release tasks helps prevents these situations. Note delaying is only needed if you have configured readLockRemoveOnCommit to true.", - "label": "consumer,lock", - "type": "integer", - "required": false, - "hidden": false, - "group": "lock", - "##others": { - "kind": "parameter", - "javaType": "int", - "deprecated": false - } - }, - "readLockIdempotentReleaseExecutorService": { - "displayName": "Read Lock Idempotent Release Executor Service", - "description": "To use a custom and shared thread pool for asynchronous release tasks. See more details at the readLockIdempotentReleaseDelay option.", - "label": "consumer,lock", - "type": "object", - "required": false, - "hidden": false, - "group": "lock", - "##others": { - "kind": "parameter", - "javaType": "java.util.concurrent.ScheduledExecutorService", - "deprecated": false - } - }, - "readLockLoggingLevel": { - "displayName": "Read Lock Logging Level", - "description": "Logging level used when a read lock could not be acquired. By default a DEBUG is logged. You can change this level, for example to OFF to not have any logging. This option is only applicable for readLock of types: changed, fileLock, idempotent, idempotent-changed, idempotent-rename, rename.", - "label": "consumer,lock", - "type": "object", - "required": false, - "hidden": false, - "defaultValue": "DEBUG", - "group": "lock", - "##others": { - "kind": "parameter", - "javaType": "org.apache.camel.LoggingLevel", - "enum": [ - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "OFF" - ], - "deprecated": false - } - }, - "readLockMarkerFile": { - "displayName": "Read Lock Marker File", - "description": "Whether to use marker file with the changed, rename, or exclusive read lock types. By default a marker file is used as well to guard against other processes picking up the same files. This behavior can be turned off by setting this option to false. For example if you do not want to write marker files to the file systems by the Camel application.", - "label": "consumer,lock", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": "true", - "group": "lock", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "readLockMinAge": { - "displayName": "Read Lock Min Age", - "description": "This option is applied only for readLock\u003dchanged. It allows to specify a minimum age the file must be before attempting to acquire the read lock. For example use readLockMinAge\u003d300s to require the file is at last 5 minutes old. This can speedup the changed read lock as it will only attempt to acquire files which are at least that given age.", - "label": "consumer,lock", - "type": "integer", - "required": false, - "hidden": false, - "defaultValue": "0", - "group": "lock", - "##others": { - "kind": "parameter", - "javaType": "long", - "deprecated": false - } - }, - "readLockMinLength": { - "displayName": "Read Lock Min Length", - "description": "This option is applied only for readLock\u003dchanged. It allows you to configure a minimum file length. By default Camel expects the file to contain data, and thus the default value is 1. You can set this option to zero, to allow consuming zero-length files.", - "label": "consumer,lock", - "type": "integer", - "required": false, - "hidden": false, - "defaultValue": "1", - "group": "lock", - "##others": { - "kind": "parameter", - "javaType": "long", - "deprecated": false - } - }, - "readLockRemoveOnCommit": { - "displayName": "Read Lock Remove On Commit", - "description": "This option is applied only for readLock\u003didempotent. It allows to specify whether to remove the file name entry from the idempotent repository when processing the file is succeeded and a commit happens. By default the file is not removed which ensures that any race-condition do not occur so another active node may attempt to grab the file. Instead the idempotent repository may support eviction strategies that you can configure to evict the file name entry after X minutes - this ensures no problems with race conditions. See more details at the readLockIdempotentReleaseDelay option.", - "label": "consumer,lock", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "lock", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "readLockRemoveOnRollback": { - "displayName": "Read Lock Remove On Rollback", - "description": "This option is applied only for readLock\u003didempotent. It allows to specify whether to remove the file name entry from the idempotent repository when processing the file failed and a rollback happens. If this option is false, then the file name entry is confirmed (as if the file did a commit).", - "label": "consumer,lock", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": "true", - "group": "lock", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "readLockTimeout": { - "displayName": "Read Lock Timeout", - "description": "Optional timeout in millis for the read-lock, if supported by the read-lock. If the read-lock could not be granted and the timeout triggered, then Camel will skip the file. At next poll Camel, will try the file again, and this time maybe the read-lock could be granted. Use a value of 0 or lower to indicate forever. Currently fileLock, changed and rename support the timeout. Notice: For FTP the default readLockTimeout value is 20000 instead of 10000. The readLockTimeout value must be higher than readLockCheckInterval, but a rule of thumb is to have a timeout that is at least 2 or more times higher than the readLockCheckInterval. This is needed to ensure that amble time is allowed for the read lock process to try to grab the lock before the timeout was hit.", - "label": "consumer,lock", - "type": "integer", - "required": false, - "hidden": false, - "defaultValue": "10000", - "group": "lock", - "##others": { - "kind": "parameter", - "javaType": "long", - "deprecated": false - } - }, - "backoffErrorThreshold": { - "displayName": "Backoff Error Threshold", - "description": "The number of subsequent error polls (failed due some error) that should happen before the backoffMultipler should kick-in.", - "label": "consumer,scheduler", - "type": "integer", - "required": false, - "hidden": false, - "group": "scheduler", - "##others": { - "kind": "parameter", - "javaType": "int", - "deprecated": false - } - }, - "backoffIdleThreshold": { - "displayName": "Backoff Idle Threshold", - "description": "The number of subsequent idle polls that should happen before the backoffMultipler should kick-in.", - "label": "consumer,scheduler", - "type": "integer", - "required": false, - "hidden": false, - "group": "scheduler", - "##others": { - "kind": "parameter", - "javaType": "int", - "deprecated": false - } - }, - "backoffMultiplier": { - "displayName": "Backoff Multiplier", - "description": "To let the scheduled polling consumer backoff if there has been a number of subsequent idles/errors in a row. The multiplier is then the number of polls that will be skipped before the next actual attempt is happening again. When this option is in use then backoffIdleThreshold and/or backoffErrorThreshold must also be configured.", - "label": "consumer,scheduler", - "type": "integer", - "required": false, - "hidden": false, - "group": "scheduler", - "##others": { - "kind": "parameter", - "javaType": "int", - "deprecated": false - } - }, - "delay": { - "displayName": "Delay", - "description": "Milliseconds before the next poll.", - "label": "consumer,scheduler", - "type": "integer", - "required": false, - "hidden": false, - "defaultValue": "500", - "group": "scheduler", - "##others": { - "kind": "parameter", - "javaType": "long", - "deprecated": false - } - }, - "greedy": { - "displayName": "Greedy", - "description": "If greedy is enabled, then the ScheduledPollConsumer will run immediately again, if the previous run polled 1 or more messages.", - "label": "consumer,scheduler", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "scheduler", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "initialDelay": { - "displayName": "Initial Delay", - "description": "Milliseconds before the first poll starts.", - "label": "consumer,scheduler", - "type": "integer", - "required": false, - "hidden": false, - "defaultValue": "1000", - "group": "scheduler", - "##others": { - "kind": "parameter", - "javaType": "long", - "deprecated": false - } - }, - "repeatCount": { - "displayName": "Repeat Count", - "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever.", - "label": "consumer,scheduler", - "type": "integer", - "required": false, - "hidden": false, - "defaultValue": "0", - "group": "scheduler", - "##others": { - "kind": "parameter", - "javaType": "long", - "deprecated": false - } - }, - "runLoggingLevel": { - "displayName": "Run Logging Level", - "description": "The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that.", - "label": "consumer,scheduler", - "type": "object", - "required": false, - "hidden": false, - "defaultValue": "TRACE", - "group": "scheduler", - "##others": { - "kind": "parameter", - "javaType": "org.apache.camel.LoggingLevel", - "enum": [ - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "OFF" - ], - "deprecated": false - } - }, - "scheduledExecutorService": { - "displayName": "Scheduled Executor Service", - "description": "Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool.", - "label": "consumer,scheduler", - "type": "object", - "required": false, - "hidden": false, - "group": "scheduler", - "##others": { - "kind": "parameter", - "javaType": "java.util.concurrent.ScheduledExecutorService", - "deprecated": false - } - }, - "scheduler": { - "displayName": "Scheduler", - "description": "To use a cron scheduler from either camel-spring or camel-quartz component", - "label": "consumer,scheduler", - "type": "string", - "required": false, - "hidden": false, - "defaultValue": "none", - "group": "scheduler", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "enum": [ - "none", - "spring", - "quartz" - ], - "deprecated": false - } - }, - "schedulerProperties": { - "displayName": "Scheduler Properties", - "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler.", - "label": "consumer,scheduler", - "type": "object", - "required": false, - "hidden": false, - "group": "scheduler", - "##others": { - "kind": "parameter", - "javaType": "java.util.Map\u003cjava.lang.String, java.lang.Object\u003e", - "prefix": "scheduler.", - "multiValue": true, - "deprecated": false - } - }, - "startScheduler": { - "displayName": "Start Scheduler", - "description": "Whether the scheduler should be auto started.", - "label": "consumer,scheduler", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": "true", - "group": "scheduler", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "timeUnit": { - "displayName": "Time Unit", - "description": "Time unit for initialDelay and delay options.", - "label": "consumer,scheduler", - "type": "object", - "required": false, - "hidden": false, - "defaultValue": "MILLISECONDS", - "group": "scheduler", - "##others": { - "kind": "parameter", - "javaType": "java.util.concurrent.TimeUnit", - "enum": [ - "NANOSECONDS", - "MICROSECONDS", - "MILLISECONDS", - "SECONDS", - "MINUTES", - "HOURS", - "DAYS" - ], - "deprecated": false - } - }, - "useFixedDelay": { - "displayName": "Use Fixed Delay", - "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details.", - "label": "consumer,scheduler", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": "true", - "group": "scheduler", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "shuffle": { - "displayName": "Shuffle", - "description": "To shuffle the list of files (sort in random order)", - "label": "consumer,sort", - "type": "boolean", - "required": false, - "hidden": false, - "defaultValue": false, - "group": "sort", - "##others": { - "kind": "parameter", - "javaType": "boolean", - "deprecated": false - } - }, - "sortBy": { - "displayName": "Sort By", - "description": "Built-in sort by using the File Language. Supports nested sorts, so you can have a sort by file name and as a 2nd group sort by modified date.", - "label": "consumer,sort", - "type": "string", - "required": false, - "hidden": false, - "group": "sort", - "##others": { - "kind": "parameter", - "javaType": "java.lang.String", - "deprecated": false - } - }, - "sorter": { - "displayName": "Sorter", - "description": "Pluggable sorter as a java.util.Comparator class.", - "label": "consumer,sort", - "type": "object", - "required": false, - "hidden": false, - "group": "sort", - "##others": { - "kind": "parameter", - "javaType": "java.util.Comparator\u003corg.apache.camel.component.file.GenericFile\u003cjava.io.File\u003e\u003e", - "deprecated": false - } - }, - "rootDirectory": { - "type": "String", - "group": "entaxy", - "required": true - } - }, - "outputs": { - "init": { - "isDefault": true, - "generator": "", - "config": { - "configurable": true - }, - "fields": { - "rootDirectory": {} - } - } - }, - "##origin": { - "component": { - "kind": "component", - "name": "file", - "title": "File", - "description": "Read and write files.", - "deprecated": false, - "firstVersion": "1.0.0", - "label": "file,core", - "javaType": "org.apache.camel.component.file.FileComponent", - "supportLevel": "Stable", - "groupId": "org.apache.camel", - "artifactId": "camel-file", - "version": "3.4.5", - "scheme": "file", - "extendsScheme": "", - "syntax": "file:directoryName", - "async": false, - "consumerOnly": false, - "producerOnly": false, - "lenientProperties": false - }, - "componentProperties": { - "bridgeErrorHandler": { - "kind": "property", - "displayName": "Bridge Error Handler", - "group": "consumer", - "label": "consumer", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored." - }, - "lazyStartProducer": { - "kind": "property", - "displayName": "Lazy Start Producer", - "group": "producer", - "label": "producer", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel\u0027s routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing." - }, - "basicPropertyBinding": { - "kind": "property", - "displayName": "Basic Property Binding", - "group": "advanced", - "label": "advanced", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities" - } - }, - "properties": { - "directoryName": { - "kind": "path", - "displayName": "Directory Name", - "group": "common", - "label": "", - "required": true, - "type": "string", - "javaType": "java.io.File", - "deprecated": false, - "deprecationNote": "", - "secret": false, - "description": "The starting directory" - }, - "charset": { - "kind": "parameter", - "displayName": "Charset", - "group": "common", - "label": "", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "This option is used to specify the encoding of the file. You can use this on the consumer, to specify the encodings of the files, which allow Camel to know the charset it should load the file content in case the file content is being accessed. Likewise when writing a file, you can use this option to specify which charset to write the file as well. Do mind that when writing the file Camel may have to read the message content into memory to be able to convert the data into the configured charset, so do not use this if you have big messages." - }, - "doneFileName": { - "kind": "parameter", - "displayName": "Done File Name", - "group": "common", - "label": "", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "Producer: If provided, then Camel will write a 2nd done file when the original file has been written. The done file will be empty. This option configures what file name to use. Either you can specify a fixed name. Or you can use dynamic placeholders. The done file will always be written in the same folder as the original file. Consumer: If provided, Camel will only consume files if a done file exists. This option configures what file name to use. Either you can specify a fixed name. Or you can use dynamic placeholders.The done file is always expected in the same folder as the original file. Only ${file.name} and ${file.name.next} is supported as dynamic placeholders." - }, - "fileName": { - "kind": "parameter", - "displayName": "File Name", - "group": "common", - "label": "", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "Use Expression such as File Language to dynamically set the filename. For consumers, it\u0027s used as a filename filter. For producers, it\u0027s used to evaluate the filename to write. If an expression is set, it take precedence over the CamelFileName header. (Note: The header itself can also be an Expression). The expression options support both String and Expression types. If the expression is a String type, it is always evaluated using the File Language. If the expression is an Expression type, the specified Expression type is used - this allows you, for instance, to use OGNL expressions. For the consumer, you can use it to filter filenames, so you can for instance consume today\u0027s file using the File Language syntax: mydata-${date:now:yyyyMMdd}.txt. The producers support the CamelOverruleFileName header which takes precedence over any existing CamelFileName header; the CamelOverruleFileName is a header that is used only once, and makes it easier as this avoids to temporary store CamelFileName and have to restore it afterwards." - }, - "bridgeErrorHandler": { - "kind": "parameter", - "displayName": "Bridge Error Handler", - "group": "consumer", - "label": "consumer", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored." - }, - "delete": { - "kind": "parameter", - "displayName": "Delete", - "group": "consumer", - "label": "consumer", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "If true, the file will be deleted after it is processed successfully." - }, - "moveFailed": { - "kind": "parameter", - "displayName": "Move Failed", - "group": "consumer", - "label": "consumer", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "Sets the move failure expression based on Simple language. For example, to move files into a .error subdirectory use: .error. Note: When moving the files to the fail location Camel will handle the error and will not pick up the file again." - }, - "noop": { - "kind": "parameter", - "displayName": "Noop", - "group": "consumer", - "label": "consumer", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "If true, the file is not moved or deleted in any way. This option is good for readonly data, or for ETL type requirements. If noop\u003dtrue, Camel will set idempotent\u003dtrue as well, to avoid consuming the same files over and over again." - }, - "preMove": { - "kind": "parameter", - "displayName": "Pre Move", - "group": "consumer", - "label": "consumer", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "Expression (such as File Language) used to dynamically set the filename when moving it before processing. For example to move in-progress files into the order directory set this value to order." - }, - "preSort": { - "kind": "parameter", - "displayName": "Pre Sort", - "group": "consumer", - "label": "consumer", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "When pre-sort is enabled then the consumer will sort the file and directory names during polling, that was retrieved from the file system. You may want to do this in case you need to operate on the files in a sorted order. The pre-sort is executed before the consumer starts to filter, and accept files to process by Camel. This option is default\u003dfalse meaning disabled." - }, - "recursive": { - "kind": "parameter", - "displayName": "Recursive", - "group": "consumer", - "label": "consumer", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "If a directory, will look for files in all the sub-directories as well." - }, - "sendEmptyMessageWhenIdle": { - "kind": "parameter", - "displayName": "Send Empty Message When Idle", - "group": "consumer", - "label": "consumer", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "If the polling consumer did not poll any files, you can enable this option to send an empty message (no body) instead." - }, - "directoryMustExist": { - "kind": "parameter", - "displayName": "Directory Must Exist", - "group": "consumer (advanced)", - "label": "consumer,advanced", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "Similar to the startingDirectoryMustExist option but this applies during polling (after starting the consumer)." - }, - "exceptionHandler": { - "kind": "parameter", - "displayName": "Exception Handler", - "group": "consumer (advanced)", - "label": "consumer,advanced", - "required": false, - "type": "object", - "javaType": "org.apache.camel.spi.ExceptionHandler", - "optionalPrefix": "consumer.", - "deprecated": false, - "secret": false, - "description": "To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this option is not in use. By default the consumer will deal with exceptions, that will be logged at WARN or ERROR level and ignored." - }, - "exchangePattern": { - "kind": "parameter", - "displayName": "Exchange Pattern", - "group": "consumer (advanced)", - "label": "consumer,advanced", - "required": false, - "type": "object", - "javaType": "org.apache.camel.ExchangePattern", - "enum": [ - "InOnly", - "InOut", - "InOptionalOut" - ], - "deprecated": false, - "secret": false, - "description": "Sets the exchange pattern when the consumer creates an exchange." - }, - "extendedAttributes": { - "kind": "parameter", - "displayName": "Extended Attributes", - "group": "consumer (advanced)", - "label": "consumer,advanced", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "To define which file attributes of interest. Like posix:permissions,posix:owner,basic:lastAccessTime, it supports basic wildcard like posix:, basic:lastAccessTime" - }, - "inProgressRepository": { - "kind": "parameter", - "displayName": "In Progress Repository", - "group": "consumer (advanced)", - "label": "consumer,advanced", - "required": false, - "type": "object", - "javaType": "org.apache.camel.spi.IdempotentRepository", - "deprecated": false, - "secret": false, - "description": "A pluggable in-progress repository org.apache.camel.spi.IdempotentRepository. The in-progress repository is used to account the current in progress files being consumed. By default a memory based repository is used." - }, - "localWorkDirectory": { - "kind": "parameter", - "displayName": "Local Work Directory", - "group": "consumer (advanced)", - "label": "consumer,advanced", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "When consuming, a local work directory can be used to store the remote file content directly in local files, to avoid loading the content into memory. This is beneficial, if you consume a very big remote file and thus can conserve memory." - }, - "onCompletionExceptionHandler": { - "kind": "parameter", - "displayName": "On Completion Exception Handler", - "group": "consumer (advanced)", - "label": "consumer,advanced", - "required": false, - "type": "object", - "javaType": "org.apache.camel.spi.ExceptionHandler", - "deprecated": false, - "secret": false, - "description": "To use a custom org.apache.camel.spi.ExceptionHandler to handle any thrown exceptions that happens during the file on completion process where the consumer does either a commit or rollback. The default implementation will log any exception at WARN level and ignore." - }, - "pollStrategy": { - "kind": "parameter", - "displayName": "Poll Strategy", - "group": "consumer (advanced)", - "label": "consumer,advanced", - "required": false, - "type": "object", - "javaType": "org.apache.camel.spi.PollingConsumerPollStrategy", - "deprecated": false, - "secret": false, - "description": "A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing you to provide your custom implementation to control error handling usually occurred during the poll operation before an Exchange have been created and being routed in Camel." - }, - "probeContentType": { - "kind": "parameter", - "displayName": "Probe Content Type", - "group": "consumer (advanced)", - "label": "consumer,advanced", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "Whether to enable probing of the content type. If enable then the consumer uses Files#probeContentType(java.nio.file.Path) to determine the content-type of the file, and store that as a header with key Exchange#FILE_CONTENT_TYPE on the Message." - }, - "processStrategy": { - "kind": "parameter", - "displayName": "Process Strategy", - "group": "consumer (advanced)", - "label": "consumer,advanced", - "required": false, - "type": "object", - "javaType": "org.apache.camel.component.file.GenericFileProcessStrategy\u003cjava.io.File\u003e", - "deprecated": false, - "secret": false, - "description": "A pluggable org.apache.camel.component.file.GenericFileProcessStrategy allowing you to implement your own readLock option or similar. Can also be used when special conditions must be met before a file can be consumed, such as a special ready file exists. If this option is set then the readLock option does not apply." - }, - "startingDirectoryMustExist": { - "kind": "parameter", - "displayName": "Starting Directory Must Exist", - "group": "consumer (advanced)", - "label": "consumer,advanced", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "Whether the starting directory must exist. Mind that the autoCreate option is default enabled, which means the starting directory is normally auto created if it doesn\u0027t exist. You can disable autoCreate and enable this to ensure the starting directory must exist. Will thrown an exception if the directory doesn\u0027t exist." - }, - "startingDirectoryMustHaveAccess": { - "kind": "parameter", - "displayName": "Starting Directory Must Have Access", - "group": "consumer (advanced)", - "label": "consumer,advanced", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "Whether the starting directory has access permissions. Mind that the startingDirectoryMustExist parameter must be set to true in order to verify that the directory exists. Will thrown an exception if the directory doesn\u0027t have read and write permissions." - }, - "appendChars": { - "kind": "parameter", - "displayName": "Append Chars", - "group": "producer", - "label": "producer", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "Used to append characters (text) after writing files. This can for example be used to add new lines or other separators when writing and appending to existing files. To specify new-line (slash-n or slash-r) or tab (slash-t) characters then escape with an extra slash, eg slash-slash-n." - }, - "fileExist": { - "kind": "parameter", - "displayName": "File Exist", - "group": "producer", - "label": "producer", - "required": false, - "type": "object", - "javaType": "org.apache.camel.component.file.GenericFileExist", - "enum": [ - "Override", - "Append", - "Fail", - "Ignore", - "Move", - "TryRename" - ], - "deprecated": false, - "secret": false, - "defaultValue": "Override", - "description": "What to do if a file already exists with the same name. Override, which is the default, replaces the existing file. - Append - adds content to the existing file. - Fail - throws a GenericFileOperationException, indicating that there is already an existing file. - Ignore - silently ignores the problem and does not override the existing file, but assumes everything is okay. - Move - option requires to use the moveExisting option to be configured as well. The option eagerDeleteTargetFile can be used to control what to do if an moving the file, and there exists already an existing file, otherwise causing the move operation to fail. The Move option will move any existing files, before writing the target file. - TryRename is only applicable if tempFileName option is in use. This allows to try renaming the file from the temporary name to the actual name, without doing any exists check. This check may be faster on some file systems and especially FTP servers." - }, - "flatten": { - "kind": "parameter", - "displayName": "Flatten", - "group": "producer", - "label": "producer", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "Flatten is used to flatten the file name path to strip any leading paths, so it\u0027s just the file name. This allows you to consume recursively into sub-directories, but when you eg write the files to another directory they will be written in a single directory. Setting this to true on the producer enforces that any file name in CamelFileName header will be stripped for any leading paths." - }, - "jailStartingDirectory": { - "kind": "parameter", - "displayName": "Jail Starting Directory", - "group": "producer", - "label": "producer", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": "true", - "description": "Used for jailing (restricting) writing files to the starting directory (and sub) only. This is enabled by default to not allow Camel to write files to outside directories (to be more secured out of the box). You can turn this off to allow writing files to directories outside the starting directory, such as parent or root folders." - }, - "lazyStartProducer": { - "kind": "parameter", - "displayName": "Lazy Start Producer", - "group": "producer", - "label": "producer", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel\u0027s routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing." - }, - "moveExisting": { - "kind": "parameter", - "displayName": "Move Existing", - "group": "producer", - "label": "producer", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "Expression (such as File Language) used to compute file name to use when fileExist\u003dMove is configured. To move files into a backup subdirectory just enter backup. This option only supports the following File Language tokens: file:name, file:name.ext, file:name.noext, file:onlyname, file:onlyname.noext, file:ext, and file:parent. Notice the file:parent is not supported by the FTP component, as the FTP component can only move any existing files to a relative directory based on current dir as base." - }, - "tempFileName": { - "kind": "parameter", - "displayName": "Temp File Name", - "group": "producer", - "label": "producer", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "The same as tempPrefix option but offering a more fine grained control on the naming of the temporary filename as it uses the File Language. The location for tempFilename is relative to the final file location in the option \u0027fileName\u0027, not the target directory in the base uri. For example if option fileName includes a directory prefix: dir/finalFilename then tempFileName is relative to that subdirectory dir." - }, - "tempPrefix": { - "kind": "parameter", - "displayName": "Temp Prefix", - "group": "producer", - "label": "producer", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "This option is used to write the file using a temporary name and then, after the write is complete, rename it to the real name. Can be used to identify files being written and also avoid consumers (not using exclusive read locks) reading in progress files. Is often used by FTP when uploading big files." - }, - "allowNullBody": { - "kind": "parameter", - "displayName": "Allow Null Body", - "group": "producer (advanced)", - "label": "producer,advanced", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "Used to specify if a null body is allowed during file writing. If set to true then an empty file will be created, when set to false, and attempting to send a null body to the file component, a GenericFileWriteException of \u0027Cannot write null body to file.\u0027 will be thrown. If the fileExist option is set to \u0027Override\u0027, then the file will be truncated, and if set to append the file will remain unchanged." - }, - "chmod": { - "kind": "parameter", - "displayName": "Chmod", - "group": "producer (advanced)", - "label": "producer,advanced", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "Specify the file permissions which is sent by the producer, the chmod value must be between 000 and 777; If there is a leading digit like in 0755 we will ignore it." - }, - "chmodDirectory": { - "kind": "parameter", - "displayName": "Chmod Directory", - "group": "producer (advanced)", - "label": "producer,advanced", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "Specify the directory permissions used when the producer creates missing directories, the chmod value must be between 000 and 777; If there is a leading digit like in 0755 we will ignore it." - }, - "eagerDeleteTargetFile": { - "kind": "parameter", - "displayName": "Eager Delete Target File", - "group": "producer (advanced)", - "label": "producer,advanced", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": "true", - "description": "Whether or not to eagerly delete any existing target file. This option only applies when you use fileExists\u003dOverride and the tempFileName option as well. You can use this to disable (set it to false) deleting the target file before the temp file is written. For example you may write big files and want the target file to exists during the temp file is being written. This ensure the target file is only deleted until the very last moment, just before the temp file is being renamed to the target filename. This option is also used to control whether to delete any existing files when fileExist\u003dMove is enabled, and an existing file exists. If this option copyAndDeleteOnRenameFails false, then an exception will be thrown if an existing file existed, if its true, then the existing file is deleted before the move operation." - }, - "forceWrites": { - "kind": "parameter", - "displayName": "Force Writes", - "group": "producer (advanced)", - "label": "producer,advanced", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": "true", - "description": "Whether to force syncing writes to the file system. You can turn this off if you do not want this level of guarantee, for example if writing to logs / audit logs etc; this would yield better performance." - }, - "keepLastModified": { - "kind": "parameter", - "displayName": "Keep Last Modified", - "group": "producer (advanced)", - "label": "producer,advanced", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "Will keep the last modified timestamp from the source file (if any). Will use the Exchange.FILE_LAST_MODIFIED header to located the timestamp. This header can contain either a java.util.Date or long with the timestamp. If the timestamp exists and the option is enabled it will set this timestamp on the written file. Note: This option only applies to the file producer. You cannot use this option with any of the ftp producers." - }, - "moveExistingFileStrategy": { - "kind": "parameter", - "displayName": "Move Existing File Strategy", - "group": "producer (advanced)", - "label": "producer,advanced", - "required": false, - "type": "object", - "javaType": "org.apache.camel.component.file.strategy.FileMoveExistingStrategy", - "deprecated": false, - "secret": false, - "description": "Strategy (Custom Strategy) used to move file with special naming token to use when fileExist\u003dMove is configured. By default, there is an implementation used if no custom strategy is provided" - }, - "autoCreate": { - "kind": "parameter", - "displayName": "Auto Create", - "group": "advanced", - "label": "advanced", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": "true", - "description": "Automatically create missing directories in the file\u0027s pathname. For the file consumer, that means creating the starting directory. For the file producer, it means the directory the files should be written to." - }, - "basicPropertyBinding": { - "kind": "parameter", - "displayName": "Basic Property Binding", - "group": "advanced", - "label": "advanced", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "Whether the endpoint should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities" - }, - "bufferSize": { - "kind": "parameter", - "displayName": "Buffer Size", - "group": "advanced", - "label": "advanced", - "required": false, - "type": "integer", - "javaType": "int", - "deprecated": false, - "secret": false, - "defaultValue": "131072", - "description": "Buffer size in bytes used for writing files (or in case of FTP for downloading and uploading files)." - }, - "copyAndDeleteOnRenameFail": { - "kind": "parameter", - "displayName": "Copy And Delete On Rename Fail", - "group": "advanced", - "label": "advanced", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": "true", - "description": "Whether to fallback and do a copy and delete file, in case the file could not be renamed directly. This option is not available for the FTP component." - }, - "renameUsingCopy": { - "kind": "parameter", - "displayName": "Rename Using Copy", - "group": "advanced", - "label": "advanced", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "Perform rename operations using a copy and delete strategy. This is primarily used in environments where the regular rename operation is unreliable (e.g. across different file systems or networks). This option takes precedence over the copyAndDeleteOnRenameFail parameter that will automatically fall back to the copy and delete strategy, but only after additional delays." - }, - "synchronous": { - "kind": "parameter", - "displayName": "Synchronous", - "group": "advanced", - "label": "advanced", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": "false", - "description": "Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported)." - }, - "antExclude": { - "kind": "parameter", - "displayName": "Ant Exclude", - "group": "filter", - "label": "consumer,filter", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "Ant style filter exclusion. If both antInclude and antExclude are used, antExclude takes precedence over antInclude. Multiple exclusions may be specified in comma-delimited format." - }, - "antFilterCaseSensitive": { - "kind": "parameter", - "displayName": "Ant Filter Case Sensitive", - "group": "filter", - "label": "consumer,filter", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": "true", - "description": "Sets case sensitive flag on ant filter." - }, - "antInclude": { - "kind": "parameter", - "displayName": "Ant Include", - "group": "filter", - "label": "consumer,filter", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "Ant style filter inclusion. Multiple inclusions may be specified in comma-delimited format." - }, - "eagerMaxMessagesPerPoll": { - "kind": "parameter", - "displayName": "Eager Max Messages Per Poll", - "group": "filter", - "label": "consumer,filter", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": "true", - "description": "Allows for controlling whether the limit from maxMessagesPerPoll is eager or not. If eager then the limit is during the scanning of files. Where as false would scan all files, and then perform sorting. Setting this option to false allows for sorting all files first, and then limit the poll. Mind that this requires a higher memory usage as all file details are in memory to perform the sorting." - }, - "exclude": { - "kind": "parameter", - "displayName": "Exclude", - "group": "filter", - "label": "consumer,filter", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "Is used to exclude files, if filename matches the regex pattern (matching is case in-senstive). Notice if you use symbols such as plus sign and others you would need to configure this using the RAW() syntax if configuring this as an endpoint uri. See more details at configuring endpoint uris" - }, - "filter": { - "kind": "parameter", - "displayName": "Filter", - "group": "filter", - "label": "consumer,filter", - "required": false, - "type": "object", - "javaType": "org.apache.camel.component.file.GenericFileFilter\u003cjava.io.File\u003e", - "deprecated": false, - "secret": false, - "description": "Pluggable filter as a org.apache.camel.component.file.GenericFileFilter class. Will skip files if filter returns false in its accept() method." - }, - "filterDirectory": { - "kind": "parameter", - "displayName": "Filter Directory", - "group": "filter", - "label": "consumer,filter", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "Filters the directory based on Simple language. For example to filter on current date, you can use a simple date pattern such as ${date:now:yyyMMdd}" - }, - "filterFile": { - "kind": "parameter", - "displayName": "Filter File", - "group": "filter", - "label": "consumer,filter", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "Filters the file based on Simple language. For example to filter on file size, you can use ${file:size} 5000" - }, - "idempotent": { - "kind": "parameter", - "displayName": "Idempotent", - "group": "filter", - "label": "consumer,filter", - "required": false, - "type": "boolean", - "javaType": "java.lang.Boolean", - "deprecated": false, - "secret": false, - "defaultValue": "false", - "description": "Option to use the Idempotent Consumer EIP pattern to let Camel skip already processed files. Will by default use a memory based LRUCache that holds 1000 entries. If noop\u003dtrue then idempotent will be enabled as well to avoid consuming the same files over and over again." - }, - "idempotentKey": { - "kind": "parameter", - "displayName": "Idempotent Key", - "group": "filter", - "label": "consumer,filter", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "To use a custom idempotent key. By default the absolute path of the file is used. You can use the File Language, for example to use the file name and file size, you can do: idempotentKey\u003d${file:name}-${file:size}" - }, - "idempotentRepository": { - "kind": "parameter", - "displayName": "Idempotent Repository", - "group": "filter", - "label": "consumer,filter", - "required": false, - "type": "object", - "javaType": "org.apache.camel.spi.IdempotentRepository", - "deprecated": false, - "secret": false, - "description": "A pluggable repository org.apache.camel.spi.IdempotentRepository which by default use MemoryMessageIdRepository if none is specified and idempotent is true." - }, - "include": { - "kind": "parameter", - "displayName": "Include", - "group": "filter", - "label": "consumer,filter", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "Is used to include files, if filename matches the regex pattern (matching is case in-sensitive). Notice if you use symbols such as plus sign and others you would need to configure this using the RAW() syntax if configuring this as an endpoint uri. See more details at configuring endpoint uris" - }, - "maxDepth": { - "kind": "parameter", - "displayName": "Max Depth", - "group": "filter", - "label": "consumer,filter", - "required": false, - "type": "integer", - "javaType": "int", - "deprecated": false, - "secret": false, - "defaultValue": "2147483647", - "description": "The maximum depth to traverse when recursively processing a directory." - }, - "maxMessagesPerPoll": { - "kind": "parameter", - "displayName": "Max Messages Per Poll", - "group": "filter", - "label": "consumer,filter", - "required": false, - "type": "integer", - "javaType": "int", - "deprecated": false, - "secret": false, - "description": "To define a maximum messages to gather per poll. By default no maximum is set. Can be used to set a limit of e.g. 1000 to avoid when starting up the server that there are thousands of files. Set a value of 0 or negative to disabled it. Notice: If this option is in use then the File and FTP components will limit before any sorting. For example if you have 100000 files and use maxMessagesPerPoll\u003d500, then only the first 500 files will be picked up, and then sorted. You can use the eagerMaxMessagesPerPoll option and set this to false to allow to scan all files first and then sort afterwards." - }, - "minDepth": { - "kind": "parameter", - "displayName": "Min Depth", - "group": "filter", - "label": "consumer,filter", - "required": false, - "type": "integer", - "javaType": "int", - "deprecated": false, - "secret": false, - "description": "The minimum depth to start processing when recursively processing a directory. Using minDepth\u003d1 means the base directory. Using minDepth\u003d2 means the first sub directory." - }, - "move": { - "kind": "parameter", - "displayName": "Move", - "group": "filter", - "label": "consumer,filter", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "Expression (such as Simple Language) used to dynamically set the filename when moving it after processing. To move files into a .done subdirectory just enter .done." - }, - "exclusiveReadLockStrategy": { - "kind": "parameter", - "displayName": "Exclusive Read Lock Strategy", - "group": "lock", - "label": "consumer,lock", - "required": false, - "type": "object", - "javaType": "org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy\u003cjava.io.File\u003e", - "deprecated": false, - "secret": false, - "description": "Pluggable read-lock as a org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy implementation." - }, - "readLock": { - "kind": "parameter", - "displayName": "Read Lock", - "group": "lock", - "label": "consumer,lock", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "enum": [ - "none", - "markerFile", - "fileLock", - "rename", - "changed", - "idempotent", - "idempotent-changed", - "idempotent-rename" - ], - "deprecated": false, - "secret": false, - "defaultValue": "none", - "description": "Used by consumer, to only poll the files if it has exclusive read-lock on the file (i.e. the file is not in-progress or being written). Camel will wait until the file lock is granted. This option provides the build in strategies: - none - No read lock is in use - markerFile - Camel creates a marker file (fileName.camelLock) and then holds a lock on it. This option is not available for the FTP component - changed - Changed is using file length/modification timestamp to detect whether the file is currently being copied or not. Will at least use 1 sec to determine this, so this option cannot consume files as fast as the others, but can be more reliable as the JDK IO API cannot always determine whether a file is currently being used by another process. The option readLockCheckInterval can be used to set the check frequency. - fileLock - is for using java.nio.channels.FileLock. This option is not avail for Windows OS and the FTP component. This approach should be avoided when accessing a remote file system via a mount/share unless that file system supports distributed file locks. - rename - rename is for using a try to rename the file as a test if we can get exclusive read-lock. - idempotent - (only for file component) idempotent is for using a idempotentRepository as the read-lock. This allows to use read locks that supports clustering if the idempotent repository implementation supports that. - idempotent-changed - (only for file component) idempotent-changed is for using a idempotentRepository and changed as the combined read-lock. This allows to use read locks that supports clustering if the idempotent repository implementation supports that. - idempotent-rename - (only for file component) idempotent-rename is for using a idempotentRepository and rename as the combined read-lock. This allows to use read locks that supports clustering if the idempotent repository implementation supports that.Notice: The various read locks is not all suited to work in clustered mode, where concurrent consumers on different nodes is competing for the same files on a shared file system. The markerFile using a close to atomic operation to create the empty marker file, but its not guaranteed to work in a cluster. The fileLock may work better but then the file system need to support distributed file locks, and so on. Using the idempotent read lock can support clustering if the idempotent repository supports clustering, such as Hazelcast Component or Infinispan." - }, - "readLockCheckInterval": { - "kind": "parameter", - "displayName": "Read Lock Check Interval", - "group": "lock", - "label": "consumer,lock", - "required": false, - "type": "integer", - "javaType": "long", - "deprecated": false, - "secret": false, - "defaultValue": "1000", - "description": "Interval in millis for the read-lock, if supported by the read lock. This interval is used for sleeping between attempts to acquire the read lock. For example when using the changed read lock, you can set a higher interval period to cater for slow writes. The default of 1 sec. may be too fast if the producer is very slow writing the file. Notice: For FTP the default readLockCheckInterval is 5000. The readLockTimeout value must be higher than readLockCheckInterval, but a rule of thumb is to have a timeout that is at least 2 or more times higher than the readLockCheckInterval. This is needed to ensure that amble time is allowed for the read lock process to try to grab the lock before the timeout was hit." - }, - "readLockDeleteOrphanLockFiles": { - "kind": "parameter", - "displayName": "Read Lock Delete Orphan Lock Files", - "group": "lock", - "label": "consumer,lock", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": "true", - "description": "Whether or not read lock with marker files should upon startup delete any orphan read lock files, which may have been left on the file system, if Camel was not properly shutdown (such as a JVM crash). If turning this option to false then any orphaned lock file will cause Camel to not attempt to pickup that file, this could also be due another node is concurrently reading files from the same shared directory." - }, - "readLockIdempotentReleaseAsync": { - "kind": "parameter", - "displayName": "Read Lock Idempotent Release Async", - "group": "lock", - "label": "consumer,lock", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "Whether the delayed release task should be synchronous or asynchronous. See more details at the readLockIdempotentReleaseDelay option." - }, - "readLockIdempotentReleaseAsyncPoolSize": { - "kind": "parameter", - "displayName": "Read Lock Idempotent Release Async Pool Size", - "group": "lock", - "label": "consumer,lock", - "required": false, - "type": "integer", - "javaType": "int", - "deprecated": false, - "secret": false, - "description": "The number of threads in the scheduled thread pool when using asynchronous release tasks. Using a default of 1 core threads should be sufficient in almost all use-cases, only set this to a higher value if either updating the idempotent repository is slow, or there are a lot of files to process. This option is not in-use if you use a shared thread pool by configuring the readLockIdempotentReleaseExecutorService option. See more details at the readLockIdempotentReleaseDelay option." - }, - "readLockIdempotentReleaseDelay": { - "kind": "parameter", - "displayName": "Read Lock Idempotent Release Delay", - "group": "lock", - "label": "consumer,lock", - "required": false, - "type": "integer", - "javaType": "int", - "deprecated": false, - "secret": false, - "description": "Whether to delay the release task for a period of millis. This can be used to delay the release tasks to expand the window when a file is regarded as read-locked, in an active/active cluster scenario with a shared idempotent repository, to ensure other nodes cannot potentially scan and acquire the same file, due to race-conditions. By expanding the time-window of the release tasks helps prevents these situations. Note delaying is only needed if you have configured readLockRemoveOnCommit to true." - }, - "readLockIdempotentReleaseExecutorService": { - "kind": "parameter", - "displayName": "Read Lock Idempotent Release Executor Service", - "group": "lock", - "label": "consumer,lock", - "required": false, - "type": "object", - "javaType": "java.util.concurrent.ScheduledExecutorService", - "deprecated": false, - "secret": false, - "description": "To use a custom and shared thread pool for asynchronous release tasks. See more details at the readLockIdempotentReleaseDelay option." - }, - "readLockLoggingLevel": { - "kind": "parameter", - "displayName": "Read Lock Logging Level", - "group": "lock", - "label": "consumer,lock", - "required": false, - "type": "object", - "javaType": "org.apache.camel.LoggingLevel", - "enum": [ - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "OFF" - ], - "deprecated": false, - "secret": false, - "defaultValue": "DEBUG", - "description": "Logging level used when a read lock could not be acquired. By default a DEBUG is logged. You can change this level, for example to OFF to not have any logging. This option is only applicable for readLock of types: changed, fileLock, idempotent, idempotent-changed, idempotent-rename, rename." - }, - "readLockMarkerFile": { - "kind": "parameter", - "displayName": "Read Lock Marker File", - "group": "lock", - "label": "consumer,lock", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": "true", - "description": "Whether to use marker file with the changed, rename, or exclusive read lock types. By default a marker file is used as well to guard against other processes picking up the same files. This behavior can be turned off by setting this option to false. For example if you do not want to write marker files to the file systems by the Camel application." - }, - "readLockMinAge": { - "kind": "parameter", - "displayName": "Read Lock Min Age", - "group": "lock", - "label": "consumer,lock", - "required": false, - "type": "integer", - "javaType": "long", - "deprecated": false, - "secret": false, - "defaultValue": "0", - "description": "This option is applied only for readLock\u003dchanged. It allows to specify a minimum age the file must be before attempting to acquire the read lock. For example use readLockMinAge\u003d300s to require the file is at last 5 minutes old. This can speedup the changed read lock as it will only attempt to acquire files which are at least that given age." - }, - "readLockMinLength": { - "kind": "parameter", - "displayName": "Read Lock Min Length", - "group": "lock", - "label": "consumer,lock", - "required": false, - "type": "integer", - "javaType": "long", - "deprecated": false, - "secret": false, - "defaultValue": "1", - "description": "This option is applied only for readLock\u003dchanged. It allows you to configure a minimum file length. By default Camel expects the file to contain data, and thus the default value is 1. You can set this option to zero, to allow consuming zero-length files." - }, - "readLockRemoveOnCommit": { - "kind": "parameter", - "displayName": "Read Lock Remove On Commit", - "group": "lock", - "label": "consumer,lock", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "This option is applied only for readLock\u003didempotent. It allows to specify whether to remove the file name entry from the idempotent repository when processing the file is succeeded and a commit happens. By default the file is not removed which ensures that any race-condition do not occur so another active node may attempt to grab the file. Instead the idempotent repository may support eviction strategies that you can configure to evict the file name entry after X minutes - this ensures no problems with race conditions. See more details at the readLockIdempotentReleaseDelay option." - }, - "readLockRemoveOnRollback": { - "kind": "parameter", - "displayName": "Read Lock Remove On Rollback", - "group": "lock", - "label": "consumer,lock", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": "true", - "description": "This option is applied only for readLock\u003didempotent. It allows to specify whether to remove the file name entry from the idempotent repository when processing the file failed and a rollback happens. If this option is false, then the file name entry is confirmed (as if the file did a commit)." - }, - "readLockTimeout": { - "kind": "parameter", - "displayName": "Read Lock Timeout", - "group": "lock", - "label": "consumer,lock", - "required": false, - "type": "integer", - "javaType": "long", - "deprecated": false, - "secret": false, - "defaultValue": "10000", - "description": "Optional timeout in millis for the read-lock, if supported by the read-lock. If the read-lock could not be granted and the timeout triggered, then Camel will skip the file. At next poll Camel, will try the file again, and this time maybe the read-lock could be granted. Use a value of 0 or lower to indicate forever. Currently fileLock, changed and rename support the timeout. Notice: For FTP the default readLockTimeout value is 20000 instead of 10000. The readLockTimeout value must be higher than readLockCheckInterval, but a rule of thumb is to have a timeout that is at least 2 or more times higher than the readLockCheckInterval. This is needed to ensure that amble time is allowed for the read lock process to try to grab the lock before the timeout was hit." - }, - "backoffErrorThreshold": { - "kind": "parameter", - "displayName": "Backoff Error Threshold", - "group": "scheduler", - "label": "consumer,scheduler", - "required": false, - "type": "integer", - "javaType": "int", - "deprecated": false, - "secret": false, - "description": "The number of subsequent error polls (failed due some error) that should happen before the backoffMultipler should kick-in." - }, - "backoffIdleThreshold": { - "kind": "parameter", - "displayName": "Backoff Idle Threshold", - "group": "scheduler", - "label": "consumer,scheduler", - "required": false, - "type": "integer", - "javaType": "int", - "deprecated": false, - "secret": false, - "description": "The number of subsequent idle polls that should happen before the backoffMultipler should kick-in." - }, - "backoffMultiplier": { - "kind": "parameter", - "displayName": "Backoff Multiplier", - "group": "scheduler", - "label": "consumer,scheduler", - "required": false, - "type": "integer", - "javaType": "int", - "deprecated": false, - "secret": false, - "description": "To let the scheduled polling consumer backoff if there has been a number of subsequent idles/errors in a row. The multiplier is then the number of polls that will be skipped before the next actual attempt is happening again. When this option is in use then backoffIdleThreshold and/or backoffErrorThreshold must also be configured." - }, - "delay": { - "kind": "parameter", - "displayName": "Delay", - "group": "scheduler", - "label": "consumer,scheduler", - "required": false, - "type": "integer", - "javaType": "long", - "deprecated": false, - "secret": false, - "defaultValue": "500", - "description": "Milliseconds before the next poll." - }, - "greedy": { - "kind": "parameter", - "displayName": "Greedy", - "group": "scheduler", - "label": "consumer,scheduler", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "If greedy is enabled, then the ScheduledPollConsumer will run immediately again, if the previous run polled 1 or more messages." - }, - "initialDelay": { - "kind": "parameter", - "displayName": "Initial Delay", - "group": "scheduler", - "label": "consumer,scheduler", - "required": false, - "type": "integer", - "javaType": "long", - "deprecated": false, - "secret": false, - "defaultValue": "1000", - "description": "Milliseconds before the first poll starts." - }, - "repeatCount": { - "kind": "parameter", - "displayName": "Repeat Count", - "group": "scheduler", - "label": "consumer,scheduler", - "required": false, - "type": "integer", - "javaType": "long", - "deprecated": false, - "secret": false, - "defaultValue": "0", - "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." - }, - "runLoggingLevel": { - "kind": "parameter", - "displayName": "Run Logging Level", - "group": "scheduler", - "label": "consumer,scheduler", - "required": false, - "type": "object", - "javaType": "org.apache.camel.LoggingLevel", - "enum": [ - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "OFF" - ], - "deprecated": false, - "secret": false, - "defaultValue": "TRACE", - "description": "The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that." - }, - "scheduledExecutorService": { - "kind": "parameter", - "displayName": "Scheduled Executor Service", - "group": "scheduler", - "label": "consumer,scheduler", - "required": false, - "type": "object", - "javaType": "java.util.concurrent.ScheduledExecutorService", - "deprecated": false, - "secret": false, - "description": "Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." - }, - "scheduler": { - "kind": "parameter", - "displayName": "Scheduler", - "group": "scheduler", - "label": "consumer,scheduler", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "enum": [ - "none", - "spring", - "quartz" - ], - "deprecated": false, - "secret": false, - "defaultValue": "none", - "description": "To use a cron scheduler from either camel-spring or camel-quartz component" - }, - "schedulerProperties": { - "kind": "parameter", - "displayName": "Scheduler Properties", - "group": "scheduler", - "label": "consumer,scheduler", - "required": false, - "type": "object", - "javaType": "java.util.Map\u003cjava.lang.String, java.lang.Object\u003e", - "prefix": "scheduler.", - "multiValue": true, - "deprecated": false, - "secret": false, - "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." - }, - "startScheduler": { - "kind": "parameter", - "displayName": "Start Scheduler", - "group": "scheduler", - "label": "consumer,scheduler", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": "true", - "description": "Whether the scheduler should be auto started." - }, - "timeUnit": { - "kind": "parameter", - "displayName": "Time Unit", - "group": "scheduler", - "label": "consumer,scheduler", - "required": false, - "type": "object", - "javaType": "java.util.concurrent.TimeUnit", - "enum": [ - "NANOSECONDS", - "MICROSECONDS", - "MILLISECONDS", - "SECONDS", - "MINUTES", - "HOURS", - "DAYS" - ], - "deprecated": false, - "secret": false, - "defaultValue": "MILLISECONDS", - "description": "Time unit for initialDelay and delay options." - }, - "useFixedDelay": { - "kind": "parameter", - "displayName": "Use Fixed Delay", - "group": "scheduler", - "label": "consumer,scheduler", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": "true", - "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details." - }, - "shuffle": { - "kind": "parameter", - "displayName": "Shuffle", - "group": "sort", - "label": "consumer,sort", - "required": false, - "type": "boolean", - "javaType": "boolean", - "deprecated": false, - "secret": false, - "defaultValue": false, - "description": "To shuffle the list of files (sort in random order)" - }, - "sortBy": { - "kind": "parameter", - "displayName": "Sort By", - "group": "sort", - "label": "consumer,sort", - "required": false, - "type": "string", - "javaType": "java.lang.String", - "deprecated": false, - "secret": false, - "description": "Built-in sort by using the File Language. Supports nested sorts, so you can have a sort by file name and as a 2nd group sort by modified date." - }, - "sorter": { - "kind": "parameter", - "displayName": "Sorter", - "group": "sort", - "label": "consumer,sort", - "required": false, - "type": "object", - "javaType": "java.util.Comparator\u003corg.apache.camel.component.file.GenericFile\u003cjava.io.File\u003e\u003e", - "deprecated": false, - "secret": false, - "description": "Pluggable sorter as a java.util.Comparator class." - } - } - } -} \ No newline at end of file + "factory": { + "id": "file-adapter", + "type": "entaxy.runtime.connection", + "isAbstract": false, + "label": "file,core", + "description": "Read and write files.", + "category": "adapter" + }, + "entaxy.runtime.connection": { + }, + "fields": { + "bridgeErrorHandler": { + "displayName": "Bridge Error Handler", + "description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored.", + "label": "consumer", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "consumer", + "##others": { + "old": { + "kind": "property", + "javaType": "boolean", + "deprecated": false + }, + "new": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + } + }, + "kind": [ + "property", + "parameter" + ] + }, + "lazyStartProducer": { + "displayName": "Lazy Start Producer", + "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel\u0027s routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing.", + "label": "producer", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "producer", + "##others": { + "old": { + "kind": "property", + "javaType": "boolean", + "deprecated": false + }, + "new": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + } + }, + "kind": [ + "property", + "parameter" + ] + }, + "basicPropertyBinding": { + "displayName": "Basic Property Binding", + "description": "Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities", + "label": "advanced", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "advanced", + "##others": { + "old": { + "kind": "property", + "javaType": "boolean", + "deprecated": false + }, + "new": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + } + }, + "kind": [ + "property", + "parameter" + ] + }, + "directoryName": { + "displayName": "Directory Name", + "description": "The starting directory", + "label": "", + "type": "string", + "required": true, + "hidden": false, + "group": "common", + "##others": { + "kind": "path", + "javaType": "java.io.File", + "deprecated": false, + "deprecationNote": "" + }, + "kind": "path" + }, + "charset": { + "displayName": "Charset", + "description": "This option is used to specify the encoding of the file. You can use this on the consumer, to specify the encodings of the files, which allow Camel to know the charset it should load the file content in case the file content is being accessed. Likewise when writing a file, you can use this option to specify which charset to write the file as well. Do mind that when writing the file Camel may have to read the message content into memory to be able to convert the data into the configured charset, so do not use this if you have big messages.", + "label": "", + "type": "string", + "required": false, + "hidden": false, + "group": "common", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "doneFileName": { + "displayName": "Done File Name", + "description": "Producer: If provided, then Camel will write a 2nd done file when the original file has been written. The done file will be empty. This option configures what file name to use. Either you can specify a fixed name. Or you can use dynamic placeholders. The done file will always be written in the same folder as the original file. Consumer: If provided, Camel will only consume files if a done file exists. This option configures what file name to use. Either you can specify a fixed name. Or you can use dynamic placeholders.The done file is always expected in the same folder as the original file. Only ${file.name} and ${file.name.next} is supported as dynamic placeholders.", + "label": "", + "type": "string", + "required": false, + "hidden": false, + "group": "common", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "fileName": { + "displayName": "File Name", + "description": "Use Expression such as File Language to dynamically set the filename. For consumers, it\u0027s used as a filename filter. For producers, it\u0027s used to evaluate the filename to write. If an expression is set, it take precedence over the CamelFileName header. (Note: The header itself can also be an Expression). The expression options support both String and Expression types. If the expression is a String type, it is always evaluated using the File Language. If the expression is an Expression type, the specified Expression type is used - this allows you, for instance, to use OGNL expressions. For the consumer, you can use it to filter filenames, so you can for instance consume today\u0027s file using the File Language syntax: mydata-${date:now:yyyyMMdd}.txt. The producers support the CamelOverruleFileName header which takes precedence over any existing CamelFileName header; the CamelOverruleFileName is a header that is used only once, and makes it easier as this avoids to temporary store CamelFileName and have to restore it afterwards.", + "label": "", + "type": "string", + "required": false, + "hidden": false, + "group": "common", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "delete": { + "displayName": "Delete", + "description": "If true, the file will be deleted after it is processed successfully.", + "label": "consumer", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "consumer", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "moveFailed": { + "displayName": "Move Failed", + "description": "Sets the move failure expression based on Simple language. For example, to move files into a .error subdirectory use: .error. Note: When moving the files to the fail location Camel will handle the error and will not pick up the file again.", + "label": "consumer", + "type": "string", + "required": false, + "hidden": false, + "group": "consumer", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "noop": { + "displayName": "Noop", + "description": "If true, the file is not moved or deleted in any way. This option is good for readonly data, or for ETL type requirements. If noop\u003dtrue, Camel will set idempotent\u003dtrue as well, to avoid consuming the same files over and over again.", + "label": "consumer", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "consumer", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "preMove": { + "displayName": "Pre Move", + "description": "Expression (such as File Language) used to dynamically set the filename when moving it before processing. For example to move in-progress files into the order directory set this value to order.", + "label": "consumer", + "type": "string", + "required": false, + "hidden": false, + "group": "consumer", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "preSort": { + "displayName": "Pre Sort", + "description": "When pre-sort is enabled then the consumer will sort the file and directory names during polling, that was retrieved from the file system. You may want to do this in case you need to operate on the files in a sorted order. The pre-sort is executed before the consumer starts to filter, and accept files to process by Camel. This option is default\u003dfalse meaning disabled.", + "label": "consumer", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "consumer", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "recursive": { + "displayName": "Recursive", + "description": "If a directory, will look for files in all the sub-directories as well.", + "label": "consumer", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "consumer", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "sendEmptyMessageWhenIdle": { + "displayName": "Send Empty Message When Idle", + "description": "If the polling consumer did not poll any files, you can enable this option to send an empty message (no body) instead.", + "label": "consumer", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "consumer", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "directoryMustExist": { + "displayName": "Directory Must Exist", + "description": "Similar to the startingDirectoryMustExist option but this applies during polling (after starting the consumer).", + "label": "consumer,advanced", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "consumer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "exceptionHandler": { + "displayName": "Exception Handler", + "description": "To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this option is not in use. By default the consumer will deal with exceptions, that will be logged at WARN or ERROR level and ignored.", + "label": "consumer,advanced", + "type": "object", + "required": false, + "hidden": false, + "group": "consumer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "org.apache.camel.spi.ExceptionHandler", + "optionalPrefix": "consumer.", + "deprecated": false + }, + "kind": "parameter" + }, + "exchangePattern": { + "displayName": "Exchange Pattern", + "description": "Sets the exchange pattern when the consumer creates an exchange.", + "label": "consumer,advanced", + "type": "object", + "required": false, + "hidden": false, + "group": "consumer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "org.apache.camel.ExchangePattern", + "enum": [ + "InOnly", + "InOut", + "InOptionalOut" + ], + "deprecated": false + }, + "kind": "parameter" + }, + "extendedAttributes": { + "displayName": "Extended Attributes", + "description": "To define which file attributes of interest. Like posix:permissions,posix:owner,basic:lastAccessTime, it supports basic wildcard like posix:, basic:lastAccessTime", + "label": "consumer,advanced", + "type": "string", + "required": false, + "hidden": false, + "group": "consumer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "inProgressRepository": { + "displayName": "In Progress Repository", + "description": "A pluggable in-progress repository org.apache.camel.spi.IdempotentRepository. The in-progress repository is used to account the current in progress files being consumed. By default a memory based repository is used.", + "label": "consumer,advanced", + "type": "object", + "required": false, + "hidden": false, + "group": "consumer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "org.apache.camel.spi.IdempotentRepository", + "deprecated": false + }, + "kind": "parameter" + }, + "localWorkDirectory": { + "displayName": "Local Work Directory", + "description": "When consuming, a local work directory can be used to store the remote file content directly in local files, to avoid loading the content into memory. This is beneficial, if you consume a very big remote file and thus can conserve memory.", + "label": "consumer,advanced", + "type": "string", + "required": false, + "hidden": false, + "group": "consumer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "onCompletionExceptionHandler": { + "displayName": "On Completion Exception Handler", + "description": "To use a custom org.apache.camel.spi.ExceptionHandler to handle any thrown exceptions that happens during the file on completion process where the consumer does either a commit or rollback. The default implementation will log any exception at WARN level and ignore.", + "label": "consumer,advanced", + "type": "object", + "required": false, + "hidden": false, + "group": "consumer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "org.apache.camel.spi.ExceptionHandler", + "deprecated": false + }, + "kind": "parameter" + }, + "pollStrategy": { + "displayName": "Poll Strategy", + "description": "A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing you to provide your custom implementation to control error handling usually occurred during the poll operation before an Exchange have been created and being routed in Camel.", + "label": "consumer,advanced", + "type": "object", + "required": false, + "hidden": false, + "group": "consumer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "org.apache.camel.spi.PollingConsumerPollStrategy", + "deprecated": false + }, + "kind": "parameter" + }, + "probeContentType": { + "displayName": "Probe Content Type", + "description": "Whether to enable probing of the content type. If enable then the consumer uses Files#probeContentType(java.nio.file.Path) to determine the content-type of the file, and store that as a header with key Exchange#FILE_CONTENT_TYPE on the Message.", + "label": "consumer,advanced", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "consumer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "processStrategy": { + "displayName": "Process Strategy", + "description": "A pluggable org.apache.camel.component.file.GenericFileProcessStrategy allowing you to implement your own readLock option or similar. Can also be used when special conditions must be met before a file can be consumed, such as a special ready file exists. If this option is set then the readLock option does not apply.", + "label": "consumer,advanced", + "type": "object", + "required": false, + "hidden": false, + "group": "consumer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "org.apache.camel.component.file.GenericFileProcessStrategy\u003cjava.io.File\u003e", + "deprecated": false + }, + "kind": "parameter" + }, + "startingDirectoryMustExist": { + "displayName": "Starting Directory Must Exist", + "description": "Whether the starting directory must exist. Mind that the autoCreate option is default enabled, which means the starting directory is normally auto created if it doesn\u0027t exist. You can disable autoCreate and enable this to ensure the starting directory must exist. Will thrown an exception if the directory doesn\u0027t exist.", + "label": "consumer,advanced", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "consumer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "startingDirectoryMustHaveAccess": { + "displayName": "Starting Directory Must Have Access", + "description": "Whether the starting directory has access permissions. Mind that the startingDirectoryMustExist parameter must be set to true in order to verify that the directory exists. Will thrown an exception if the directory doesn\u0027t have read and write permissions.", + "label": "consumer,advanced", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "consumer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "appendChars": { + "displayName": "Append Chars", + "description": "Used to append characters (text) after writing files. This can for example be used to add new lines or other separators when writing and appending to existing files. To specify new-line (slash-n or slash-r) or tab (slash-t) characters then escape with an extra slash, eg slash-slash-n.", + "label": "producer", + "type": "string", + "required": false, + "hidden": false, + "group": "producer", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "fileExist": { + "displayName": "File Exist", + "description": "What to do if a file already exists with the same name. Override, which is the default, replaces the existing file. - Append - adds content to the existing file. - Fail - throws a GenericFileOperationException, indicating that there is already an existing file. - Ignore - silently ignores the problem and does not override the existing file, but assumes everything is okay. - Move - option requires to use the moveExisting option to be configured as well. The option eagerDeleteTargetFile can be used to control what to do if an moving the file, and there exists already an existing file, otherwise causing the move operation to fail. The Move option will move any existing files, before writing the target file. - TryRename is only applicable if tempFileName option is in use. This allows to try renaming the file from the temporary name to the actual name, without doing any exists check. This check may be faster on some file systems and especially FTP servers.", + "label": "producer", + "type": "object", + "required": false, + "hidden": false, + "defaultValue": "Override", + "group": "producer", + "##others": { + "kind": "parameter", + "javaType": "org.apache.camel.component.file.GenericFileExist", + "enum": [ + "Override", + "Append", + "Fail", + "Ignore", + "Move", + "TryRename" + ], + "deprecated": false + }, + "kind": "parameter" + }, + "flatten": { + "displayName": "Flatten", + "description": "Flatten is used to flatten the file name path to strip any leading paths, so it\u0027s just the file name. This allows you to consume recursively into sub-directories, but when you eg write the files to another directory they will be written in a single directory. Setting this to true on the producer enforces that any file name in CamelFileName header will be stripped for any leading paths.", + "label": "producer", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "producer", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "jailStartingDirectory": { + "displayName": "Jail Starting Directory", + "description": "Used for jailing (restricting) writing files to the starting directory (and sub) only. This is enabled by default to not allow Camel to write files to outside directories (to be more secured out of the box). You can turn this off to allow writing files to directories outside the starting directory, such as parent or root folders.", + "label": "producer", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": true, + "group": "producer", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "moveExisting": { + "displayName": "Move Existing", + "description": "Expression (such as File Language) used to compute file name to use when fileExist\u003dMove is configured. To move files into a backup subdirectory just enter backup. This option only supports the following File Language tokens: file:name, file:name.ext, file:name.noext, file:onlyname, file:onlyname.noext, file:ext, and file:parent. Notice the file:parent is not supported by the FTP component, as the FTP component can only move any existing files to a relative directory based on current dir as base.", + "label": "producer", + "type": "string", + "required": false, + "hidden": false, + "group": "producer", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "tempFileName": { + "displayName": "Temp File Name", + "description": "The same as tempPrefix option but offering a more fine grained control on the naming of the temporary filename as it uses the File Language. The location for tempFilename is relative to the final file location in the option \u0027fileName\u0027, not the target directory in the base uri. For example if option fileName includes a directory prefix: dir/finalFilename then tempFileName is relative to that subdirectory dir.", + "label": "producer", + "type": "string", + "required": false, + "hidden": false, + "group": "producer", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "tempPrefix": { + "displayName": "Temp Prefix", + "description": "This option is used to write the file using a temporary name and then, after the write is complete, rename it to the real name. Can be used to identify files being written and also avoid consumers (not using exclusive read locks) reading in progress files. Is often used by FTP when uploading big files.", + "label": "producer", + "type": "string", + "required": false, + "hidden": false, + "group": "producer", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "allowNullBody": { + "displayName": "Allow Null Body", + "description": "Used to specify if a null body is allowed during file writing. If set to true then an empty file will be created, when set to false, and attempting to send a null body to the file component, a GenericFileWriteException of \u0027Cannot write null body to file.\u0027 will be thrown. If the fileExist option is set to \u0027Override\u0027, then the file will be truncated, and if set to append the file will remain unchanged.", + "label": "producer,advanced", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "producer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "chmod": { + "displayName": "Chmod", + "description": "Specify the file permissions which is sent by the producer, the chmod value must be between 000 and 777; If there is a leading digit like in 0755 we will ignore it.", + "label": "producer,advanced", + "type": "string", + "required": false, + "hidden": false, + "group": "producer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "chmodDirectory": { + "displayName": "Chmod Directory", + "description": "Specify the directory permissions used when the producer creates missing directories, the chmod value must be between 000 and 777; If there is a leading digit like in 0755 we will ignore it.", + "label": "producer,advanced", + "type": "string", + "required": false, + "hidden": false, + "group": "producer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "eagerDeleteTargetFile": { + "displayName": "Eager Delete Target File", + "description": "Whether or not to eagerly delete any existing target file. This option only applies when you use fileExists\u003dOverride and the tempFileName option as well. You can use this to disable (set it to false) deleting the target file before the temp file is written. For example you may write big files and want the target file to exists during the temp file is being written. This ensure the target file is only deleted until the very last moment, just before the temp file is being renamed to the target filename. This option is also used to control whether to delete any existing files when fileExist\u003dMove is enabled, and an existing file exists. If this option copyAndDeleteOnRenameFails false, then an exception will be thrown if an existing file existed, if its true, then the existing file is deleted before the move operation.", + "label": "producer,advanced", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": true, + "group": "producer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "forceWrites": { + "displayName": "Force Writes", + "description": "Whether to force syncing writes to the file system. You can turn this off if you do not want this level of guarantee, for example if writing to logs / audit logs etc; this would yield better performance.", + "label": "producer,advanced", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": true, + "group": "producer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "keepLastModified": { + "displayName": "Keep Last Modified", + "description": "Will keep the last modified timestamp from the source file (if any). Will use the Exchange.FILE_LAST_MODIFIED header to located the timestamp. This header can contain either a java.util.Date or long with the timestamp. If the timestamp exists and the option is enabled it will set this timestamp on the written file. Note: This option only applies to the file producer. You cannot use this option with any of the ftp producers.", + "label": "producer,advanced", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "producer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "moveExistingFileStrategy": { + "displayName": "Move Existing File Strategy", + "description": "Strategy (Custom Strategy) used to move file with special naming token to use when fileExist\u003dMove is configured. By default, there is an implementation used if no custom strategy is provided", + "label": "producer,advanced", + "type": "object", + "required": false, + "hidden": false, + "group": "producer (advanced)", + "##others": { + "kind": "parameter", + "javaType": "org.apache.camel.component.file.strategy.FileMoveExistingStrategy", + "deprecated": false + }, + "kind": "parameter" + }, + "autoCreate": { + "displayName": "Auto Create", + "description": "Automatically create missing directories in the file\u0027s pathname. For the file consumer, that means creating the starting directory. For the file producer, it means the directory the files should be written to.", + "label": "advanced", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": true, + "group": "advanced", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "bufferSize": { + "displayName": "Buffer Size", + "description": "Buffer size in bytes used for writing files (or in case of FTP for downloading and uploading files).", + "label": "advanced", + "type": "integer", + "required": false, + "hidden": false, + "defaultValue": 131072, + "group": "advanced", + "##others": { + "kind": "parameter", + "javaType": "int", + "deprecated": false + }, + "kind": "parameter" + }, + "copyAndDeleteOnRenameFail": { + "displayName": "Copy And Delete On Rename Fail", + "description": "Whether to fallback and do a copy and delete file, in case the file could not be renamed directly. This option is not available for the FTP component.", + "label": "advanced", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": true, + "group": "advanced", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "renameUsingCopy": { + "displayName": "Rename Using Copy", + "description": "Perform rename operations using a copy and delete strategy. This is primarily used in environments where the regular rename operation is unreliable (e.g. across different file systems or networks). This option takes precedence over the copyAndDeleteOnRenameFail parameter that will automatically fall back to the copy and delete strategy, but only after additional delays.", + "label": "advanced", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "advanced", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "synchronous": { + "displayName": "Synchronous", + "description": "Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported).", + "label": "advanced", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "advanced", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "antExclude": { + "displayName": "Ant Exclude", + "description": "Ant style filter exclusion. If both antInclude and antExclude are used, antExclude takes precedence over antInclude. Multiple exclusions may be specified in comma-delimited format.", + "label": "consumer,filter", + "type": "string", + "required": false, + "hidden": false, + "group": "filter", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "antFilterCaseSensitive": { + "displayName": "Ant Filter Case Sensitive", + "description": "Sets case sensitive flag on ant filter.", + "label": "consumer,filter", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": true, + "group": "filter", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "antInclude": { + "displayName": "Ant Include", + "description": "Ant style filter inclusion. Multiple inclusions may be specified in comma-delimited format.", + "label": "consumer,filter", + "type": "string", + "required": false, + "hidden": false, + "group": "filter", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "eagerMaxMessagesPerPoll": { + "displayName": "Eager Max Messages Per Poll", + "description": "Allows for controlling whether the limit from maxMessagesPerPoll is eager or not. If eager then the limit is during the scanning of files. Where as false would scan all files, and then perform sorting. Setting this option to false allows for sorting all files first, and then limit the poll. Mind that this requires a higher memory usage as all file details are in memory to perform the sorting.", + "label": "consumer,filter", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": true, + "group": "filter", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "exclude": { + "displayName": "Exclude", + "description": "Is used to exclude files, if filename matches the regex pattern (matching is case in-senstive). Notice if you use symbols such as plus sign and others you would need to configure this using the RAW() syntax if configuring this as an endpoint uri. See more details at configuring endpoint uris", + "label": "consumer,filter", + "type": "string", + "required": false, + "hidden": false, + "group": "filter", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "filter": { + "displayName": "Filter", + "description": "Pluggable filter as a org.apache.camel.component.file.GenericFileFilter class. Will skip files if filter returns false in its accept() method.", + "label": "consumer,filter", + "type": "object", + "required": false, + "hidden": false, + "group": "filter", + "##others": { + "kind": "parameter", + "javaType": "org.apache.camel.component.file.GenericFileFilter\u003cjava.io.File\u003e", + "deprecated": false + }, + "kind": "parameter" + }, + "filterDirectory": { + "displayName": "Filter Directory", + "description": "Filters the directory based on Simple language. For example to filter on current date, you can use a simple date pattern such as ${date:now:yyyMMdd}", + "label": "consumer,filter", + "type": "string", + "required": false, + "hidden": false, + "group": "filter", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "filterFile": { + "displayName": "Filter File", + "description": "Filters the file based on Simple language. For example to filter on file size, you can use ${file:size} 5000", + "label": "consumer,filter", + "type": "string", + "required": false, + "hidden": false, + "group": "filter", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "idempotent": { + "displayName": "Idempotent", + "description": "Option to use the Idempotent Consumer EIP pattern to let Camel skip already processed files. Will by default use a memory based LRUCache that holds 1000 entries. If noop\u003dtrue then idempotent will be enabled as well to avoid consuming the same files over and over again.", + "label": "consumer,filter", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "filter", + "##others": { + "kind": "parameter", + "javaType": "java.lang.Boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "idempotentKey": { + "displayName": "Idempotent Key", + "description": "To use a custom idempotent key. By default the absolute path of the file is used. You can use the File Language, for example to use the file name and file size, you can do: idempotentKey\u003d${file:name}-${file:size}", + "label": "consumer,filter", + "type": "string", + "required": false, + "hidden": false, + "group": "filter", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "idempotentRepository": { + "displayName": "Idempotent Repository", + "description": "A pluggable repository org.apache.camel.spi.IdempotentRepository which by default use MemoryMessageIdRepository if none is specified and idempotent is true.", + "label": "consumer,filter", + "type": "object", + "required": false, + "hidden": false, + "group": "filter", + "##others": { + "kind": "parameter", + "javaType": "org.apache.camel.spi.IdempotentRepository", + "deprecated": false + }, + "kind": "parameter" + }, + "include": { + "displayName": "Include", + "description": "Is used to include files, if filename matches the regex pattern (matching is case in-sensitive). Notice if you use symbols such as plus sign and others you would need to configure this using the RAW() syntax if configuring this as an endpoint uri. See more details at configuring endpoint uris", + "label": "consumer,filter", + "type": "string", + "required": false, + "hidden": false, + "group": "filter", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "maxDepth": { + "displayName": "Max Depth", + "description": "The maximum depth to traverse when recursively processing a directory.", + "label": "consumer,filter", + "type": "integer", + "required": false, + "hidden": false, + "defaultValue": 2147483647, + "group": "filter", + "##others": { + "kind": "parameter", + "javaType": "int", + "deprecated": false + }, + "kind": "parameter" + }, + "maxMessagesPerPoll": { + "displayName": "Max Messages Per Poll", + "description": "To define a maximum messages to gather per poll. By default no maximum is set. Can be used to set a limit of e.g. 1000 to avoid when starting up the server that there are thousands of files. Set a value of 0 or negative to disabled it. Notice: If this option is in use then the File and FTP components will limit before any sorting. For example if you have 100000 files and use maxMessagesPerPoll\u003d500, then only the first 500 files will be picked up, and then sorted. You can use the eagerMaxMessagesPerPoll option and set this to false to allow to scan all files first and then sort afterwards.", + "label": "consumer,filter", + "type": "integer", + "required": false, + "hidden": false, + "group": "filter", + "##others": { + "kind": "parameter", + "javaType": "int", + "deprecated": false + }, + "kind": "parameter" + }, + "minDepth": { + "displayName": "Min Depth", + "description": "The minimum depth to start processing when recursively processing a directory. Using minDepth\u003d1 means the base directory. Using minDepth\u003d2 means the first sub directory.", + "label": "consumer,filter", + "type": "integer", + "required": false, + "hidden": false, + "group": "filter", + "##others": { + "kind": "parameter", + "javaType": "int", + "deprecated": false + }, + "kind": "parameter" + }, + "move": { + "displayName": "Move", + "description": "Expression (such as Simple Language) used to dynamically set the filename when moving it after processing. To move files into a .done subdirectory just enter .done.", + "label": "consumer,filter", + "type": "string", + "required": false, + "hidden": false, + "group": "filter", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "exclusiveReadLockStrategy": { + "displayName": "Exclusive Read Lock Strategy", + "description": "Pluggable read-lock as a org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy implementation.", + "label": "consumer,lock", + "type": "object", + "required": false, + "hidden": false, + "group": "lock", + "##others": { + "kind": "parameter", + "javaType": "org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy\u003cjava.io.File\u003e", + "deprecated": false + }, + "kind": "parameter" + }, + "readLock": { + "displayName": "Read Lock", + "description": "Used by consumer, to only poll the files if it has exclusive read-lock on the file (i.e. the file is not in-progress or being written). Camel will wait until the file lock is granted. This option provides the build in strategies: - none - No read lock is in use - markerFile - Camel creates a marker file (fileName.camelLock) and then holds a lock on it. This option is not available for the FTP component - changed - Changed is using file length/modification timestamp to detect whether the file is currently being copied or not. Will at least use 1 sec to determine this, so this option cannot consume files as fast as the others, but can be more reliable as the JDK IO API cannot always determine whether a file is currently being used by another process. The option readLockCheckInterval can be used to set the check frequency. - fileLock - is for using java.nio.channels.FileLock. This option is not avail for Windows OS and the FTP component. This approach should be avoided when accessing a remote file system via a mount/share unless that file system supports distributed file locks. - rename - rename is for using a try to rename the file as a test if we can get exclusive read-lock. - idempotent - (only for file component) idempotent is for using a idempotentRepository as the read-lock. This allows to use read locks that supports clustering if the idempotent repository implementation supports that. - idempotent-changed - (only for file component) idempotent-changed is for using a idempotentRepository and changed as the combined read-lock. This allows to use read locks that supports clustering if the idempotent repository implementation supports that. - idempotent-rename - (only for file component) idempotent-rename is for using a idempotentRepository and rename as the combined read-lock. This allows to use read locks that supports clustering if the idempotent repository implementation supports that.Notice: The various read locks is not all suited to work in clustered mode, where concurrent consumers on different nodes is competing for the same files on a shared file system. The markerFile using a close to atomic operation to create the empty marker file, but its not guaranteed to work in a cluster. The fileLock may work better but then the file system need to support distributed file locks, and so on. Using the idempotent read lock can support clustering if the idempotent repository supports clustering, such as Hazelcast Component or Infinispan.", + "label": "consumer,lock", + "type": "string", + "required": false, + "hidden": false, + "defaultValue": "none", + "group": "lock", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "enum": [ + "none", + "markerFile", + "fileLock", + "rename", + "changed", + "idempotent", + "idempotent-changed", + "idempotent-rename" + ], + "deprecated": false + }, + "kind": "parameter" + }, + "readLockCheckInterval": { + "displayName": "Read Lock Check Interval", + "description": "Interval in millis for the read-lock, if supported by the read lock. This interval is used for sleeping between attempts to acquire the read lock. For example when using the changed read lock, you can set a higher interval period to cater for slow writes. The default of 1 sec. may be too fast if the producer is very slow writing the file. Notice: For FTP the default readLockCheckInterval is 5000. The readLockTimeout value must be higher than readLockCheckInterval, but a rule of thumb is to have a timeout that is at least 2 or more times higher than the readLockCheckInterval. This is needed to ensure that amble time is allowed for the read lock process to try to grab the lock before the timeout was hit.", + "label": "consumer,lock", + "type": "integer", + "required": false, + "hidden": false, + "defaultValue": 1000, + "group": "lock", + "##others": { + "kind": "parameter", + "javaType": "long", + "deprecated": false + }, + "kind": "parameter" + }, + "readLockDeleteOrphanLockFiles": { + "displayName": "Read Lock Delete Orphan Lock Files", + "description": "Whether or not read lock with marker files should upon startup delete any orphan read lock files, which may have been left on the file system, if Camel was not properly shutdown (such as a JVM crash). If turning this option to false then any orphaned lock file will cause Camel to not attempt to pickup that file, this could also be due another node is concurrently reading files from the same shared directory.", + "label": "consumer,lock", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": true, + "group": "lock", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "readLockIdempotentReleaseAsync": { + "displayName": "Read Lock Idempotent Release Async", + "description": "Whether the delayed release task should be synchronous or asynchronous. See more details at the readLockIdempotentReleaseDelay option.", + "label": "consumer,lock", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "lock", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "readLockIdempotentReleaseAsyncPoolSize": { + "displayName": "Read Lock Idempotent Release Async Pool Size", + "description": "The number of threads in the scheduled thread pool when using asynchronous release tasks. Using a default of 1 core threads should be sufficient in almost all use-cases, only set this to a higher value if either updating the idempotent repository is slow, or there are a lot of files to process. This option is not in-use if you use a shared thread pool by configuring the readLockIdempotentReleaseExecutorService option. See more details at the readLockIdempotentReleaseDelay option.", + "label": "consumer,lock", + "type": "integer", + "required": false, + "hidden": false, + "group": "lock", + "##others": { + "kind": "parameter", + "javaType": "int", + "deprecated": false + }, + "kind": "parameter" + }, + "readLockIdempotentReleaseDelay": { + "displayName": "Read Lock Idempotent Release Delay", + "description": "Whether to delay the release task for a period of millis. This can be used to delay the release tasks to expand the window when a file is regarded as read-locked, in an active/active cluster scenario with a shared idempotent repository, to ensure other nodes cannot potentially scan and acquire the same file, due to race-conditions. By expanding the time-window of the release tasks helps prevents these situations. Note delaying is only needed if you have configured readLockRemoveOnCommit to true.", + "label": "consumer,lock", + "type": "integer", + "required": false, + "hidden": false, + "group": "lock", + "##others": { + "kind": "parameter", + "javaType": "int", + "deprecated": false + }, + "kind": "parameter" + }, + "readLockIdempotentReleaseExecutorService": { + "displayName": "Read Lock Idempotent Release Executor Service", + "description": "To use a custom and shared thread pool for asynchronous release tasks. See more details at the readLockIdempotentReleaseDelay option.", + "label": "consumer,lock", + "type": "object", + "required": false, + "hidden": false, + "group": "lock", + "##others": { + "kind": "parameter", + "javaType": "java.util.concurrent.ScheduledExecutorService", + "deprecated": false + }, + "kind": "parameter" + }, + "readLockLoggingLevel": { + "displayName": "Read Lock Logging Level", + "description": "Logging level used when a read lock could not be acquired. By default a DEBUG is logged. You can change this level, for example to OFF to not have any logging. This option is only applicable for readLock of types: changed, fileLock, idempotent, idempotent-changed, idempotent-rename, rename.", + "label": "consumer,lock", + "type": "object", + "required": false, + "hidden": false, + "defaultValue": "DEBUG", + "group": "lock", + "##others": { + "kind": "parameter", + "javaType": "org.apache.camel.LoggingLevel", + "enum": [ + "TRACE", + "DEBUG", + "INFO", + "WARN", + "ERROR", + "OFF" + ], + "deprecated": false + }, + "kind": "parameter" + }, + "readLockMarkerFile": { + "displayName": "Read Lock Marker File", + "description": "Whether to use marker file with the changed, rename, or exclusive read lock types. By default a marker file is used as well to guard against other processes picking up the same files. This behavior can be turned off by setting this option to false. For example if you do not want to write marker files to the file systems by the Camel application.", + "label": "consumer,lock", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": true, + "group": "lock", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "readLockMinAge": { + "displayName": "Read Lock Min Age", + "description": "This option is applied only for readLock\u003dchanged. It allows to specify a minimum age the file must be before attempting to acquire the read lock. For example use readLockMinAge\u003d300s to require the file is at last 5 minutes old. This can speedup the changed read lock as it will only attempt to acquire files which are at least that given age.", + "label": "consumer,lock", + "type": "integer", + "required": false, + "hidden": false, + "defaultValue": 0, + "group": "lock", + "##others": { + "kind": "parameter", + "javaType": "long", + "deprecated": false + }, + "kind": "parameter" + }, + "readLockMinLength": { + "displayName": "Read Lock Min Length", + "description": "This option is applied only for readLock\u003dchanged. It allows you to configure a minimum file length. By default Camel expects the file to contain data, and thus the default value is 1. You can set this option to zero, to allow consuming zero-length files.", + "label": "consumer,lock", + "type": "integer", + "required": false, + "hidden": false, + "defaultValue": 1, + "group": "lock", + "##others": { + "kind": "parameter", + "javaType": "long", + "deprecated": false + }, + "kind": "parameter" + }, + "readLockRemoveOnCommit": { + "displayName": "Read Lock Remove On Commit", + "description": "This option is applied only for readLock\u003didempotent. It allows to specify whether to remove the file name entry from the idempotent repository when processing the file is succeeded and a commit happens. By default the file is not removed which ensures that any race-condition do not occur so another active node may attempt to grab the file. Instead the idempotent repository may support eviction strategies that you can configure to evict the file name entry after X minutes - this ensures no problems with race conditions. See more details at the readLockIdempotentReleaseDelay option.", + "label": "consumer,lock", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "lock", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "readLockRemoveOnRollback": { + "displayName": "Read Lock Remove On Rollback", + "description": "This option is applied only for readLock\u003didempotent. It allows to specify whether to remove the file name entry from the idempotent repository when processing the file failed and a rollback happens. If this option is false, then the file name entry is confirmed (as if the file did a commit).", + "label": "consumer,lock", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": true, + "group": "lock", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "readLockTimeout": { + "displayName": "Read Lock Timeout", + "description": "Optional timeout in millis for the read-lock, if supported by the read-lock. If the read-lock could not be granted and the timeout triggered, then Camel will skip the file. At next poll Camel, will try the file again, and this time maybe the read-lock could be granted. Use a value of 0 or lower to indicate forever. Currently fileLock, changed and rename support the timeout. Notice: For FTP the default readLockTimeout value is 20000 instead of 10000. The readLockTimeout value must be higher than readLockCheckInterval, but a rule of thumb is to have a timeout that is at least 2 or more times higher than the readLockCheckInterval. This is needed to ensure that amble time is allowed for the read lock process to try to grab the lock before the timeout was hit.", + "label": "consumer,lock", + "type": "integer", + "required": false, + "hidden": false, + "defaultValue": 10000, + "group": "lock", + "##others": { + "kind": "parameter", + "javaType": "long", + "deprecated": false + }, + "kind": "parameter" + }, + "backoffErrorThreshold": { + "displayName": "Backoff Error Threshold", + "description": "The number of subsequent error polls (failed due some error) that should happen before the backoffMultipler should kick-in.", + "label": "consumer,scheduler", + "type": "integer", + "required": false, + "hidden": false, + "group": "scheduler", + "##others": { + "kind": "parameter", + "javaType": "int", + "deprecated": false + }, + "kind": "parameter" + }, + "backoffIdleThreshold": { + "displayName": "Backoff Idle Threshold", + "description": "The number of subsequent idle polls that should happen before the backoffMultipler should kick-in.", + "label": "consumer,scheduler", + "type": "integer", + "required": false, + "hidden": false, + "group": "scheduler", + "##others": { + "kind": "parameter", + "javaType": "int", + "deprecated": false + }, + "kind": "parameter" + }, + "backoffMultiplier": { + "displayName": "Backoff Multiplier", + "description": "To let the scheduled polling consumer backoff if there has been a number of subsequent idles/errors in a row. The multiplier is then the number of polls that will be skipped before the next actual attempt is happening again. When this option is in use then backoffIdleThreshold and/or backoffErrorThreshold must also be configured.", + "label": "consumer,scheduler", + "type": "integer", + "required": false, + "hidden": false, + "group": "scheduler", + "##others": { + "kind": "parameter", + "javaType": "int", + "deprecated": false + }, + "kind": "parameter" + }, + "delay": { + "displayName": "Delay", + "description": "Milliseconds before the next poll.", + "label": "consumer,scheduler", + "type": "integer", + "required": false, + "hidden": false, + "defaultValue": 500, + "group": "scheduler", + "##others": { + "kind": "parameter", + "javaType": "long", + "deprecated": false + }, + "kind": "parameter" + }, + "greedy": { + "displayName": "Greedy", + "description": "If greedy is enabled, then the ScheduledPollConsumer will run immediately again, if the previous run polled 1 or more messages.", + "label": "consumer,scheduler", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "scheduler", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "initialDelay": { + "displayName": "Initial Delay", + "description": "Milliseconds before the first poll starts.", + "label": "consumer,scheduler", + "type": "integer", + "required": false, + "hidden": false, + "defaultValue": 1000, + "group": "scheduler", + "##others": { + "kind": "parameter", + "javaType": "long", + "deprecated": false + }, + "kind": "parameter" + }, + "repeatCount": { + "displayName": "Repeat Count", + "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever.", + "label": "consumer,scheduler", + "type": "integer", + "required": false, + "hidden": false, + "defaultValue": 0, + "group": "scheduler", + "##others": { + "kind": "parameter", + "javaType": "long", + "deprecated": false + }, + "kind": "parameter" + }, + "runLoggingLevel": { + "displayName": "Run Logging Level", + "description": "The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that.", + "label": "consumer,scheduler", + "type": "object", + "required": false, + "hidden": false, + "defaultValue": "TRACE", + "group": "scheduler", + "##others": { + "kind": "parameter", + "javaType": "org.apache.camel.LoggingLevel", + "enum": [ + "TRACE", + "DEBUG", + "INFO", + "WARN", + "ERROR", + "OFF" + ], + "deprecated": false + }, + "kind": "parameter" + }, + "scheduledExecutorService": { + "displayName": "Scheduled Executor Service", + "description": "Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool.", + "label": "consumer,scheduler", + "type": "object", + "required": false, + "hidden": false, + "group": "scheduler", + "##others": { + "kind": "parameter", + "javaType": "java.util.concurrent.ScheduledExecutorService", + "deprecated": false + }, + "kind": "parameter" + }, + "scheduler": { + "displayName": "Scheduler", + "description": "To use a cron scheduler from either camel-spring or camel-quartz component", + "label": "consumer,scheduler", + "type": "string", + "required": false, + "hidden": false, + "defaultValue": "none", + "group": "scheduler", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "enum": [ + "none", + "spring", + "quartz" + ], + "deprecated": false + }, + "kind": "parameter" + }, + "schedulerProperties": { + "displayName": "Scheduler Properties", + "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler.", + "label": "consumer,scheduler", + "type": "object", + "required": false, + "hidden": false, + "group": "scheduler", + "##others": { + "kind": "parameter", + "javaType": "java.util.Map\u003cjava.lang.String, java.lang.Object\u003e", + "prefix": "scheduler.", + "multiValue": true, + "deprecated": false + }, + "kind": "parameter" + }, + "startScheduler": { + "displayName": "Start Scheduler", + "description": "Whether the scheduler should be auto started.", + "label": "consumer,scheduler", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": true, + "group": "scheduler", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "timeUnit": { + "displayName": "Time Unit", + "description": "Time unit for initialDelay and delay options.", + "label": "consumer,scheduler", + "type": "object", + "required": false, + "hidden": false, + "defaultValue": "MILLISECONDS", + "group": "scheduler", + "##others": { + "kind": "parameter", + "javaType": "java.util.concurrent.TimeUnit", + "enum": [ + "NANOSECONDS", + "MICROSECONDS", + "MILLISECONDS", + "SECONDS", + "MINUTES", + "HOURS", + "DAYS" + ], + "deprecated": false + }, + "kind": "parameter" + }, + "useFixedDelay": { + "displayName": "Use Fixed Delay", + "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details.", + "label": "consumer,scheduler", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": true, + "group": "scheduler", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "shuffle": { + "displayName": "Shuffle", + "description": "To shuffle the list of files (sort in random order)", + "label": "consumer,sort", + "type": "boolean", + "required": false, + "hidden": false, + "defaultValue": false, + "group": "sort", + "##others": { + "kind": "parameter", + "javaType": "boolean", + "deprecated": false + }, + "kind": "parameter" + }, + "sortBy": { + "displayName": "Sort By", + "description": "Built-in sort by using the File Language. Supports nested sorts, so you can have a sort by file name and as a 2nd group sort by modified date.", + "label": "consumer,sort", + "type": "string", + "required": false, + "hidden": false, + "group": "sort", + "##others": { + "kind": "parameter", + "javaType": "java.lang.String", + "deprecated": false + }, + "kind": "parameter" + }, + "sorter": { + "displayName": "Sorter", + "description": "Pluggable sorter as a java.util.Comparator class.", + "label": "consumer,sort", + "type": "object", + "required": false, + "hidden": false, + "group": "sort", + "##others": { + "kind": "parameter", + "javaType": "java.util.Comparator\u003corg.apache.camel.component.file.GenericFile\u003cjava.io.File\u003e\u003e", + "deprecated": false + }, + "kind": "parameter" + }, + "rootDirectory": { + "type": "String", + "group": "entaxy", + "required": true + } + }, + "outputs": { + "init": { + "isDefault": true, + "generator": "", + "config": { + "configurable": true + }, + "fields": { + "rootDirectory": { + }, + "@IMPORT": [ + { + "sourceFactoryId": "#", + "location": "fields", + "prefix": "file_", + "filter": { + "contains": [ + { + "attribute": "kind", + "values": [ + "property" + ] + } + ] + } + } + ], + "ext_createResourceProvider": { + "type": "Boolean", + "group": "entaxy", + "defaultValue": false, + "configurable": false + } + }, + "scopes": [ + "public", + "private" + ] + }, + "ref": { + "scopes": [ + "public", + "private" + ] + } + }, + "##origin": { + "component": { + "kind": "component", + "name": "file", + "title": "File", + "description": "Read and write files.", + "deprecated": false, + "firstVersion": "1.0.0", + "label": "file,core", + "javaType": "org.apache.camel.component.file.FileComponent", + "supportLevel": "Stable", + "groupId": "org.apache.camel", + "artifactId": "camel-file", + "version": "3.4.5", + "scheme": "file", + "extendsScheme": "", + "syntax": "file:directoryName", + "async": false, + "consumerOnly": false, + "producerOnly": false, + "lenientProperties": false + }, + "componentProperties": { + "bridgeErrorHandler": { + "kind": "property", + "displayName": "Bridge Error Handler", + "group": "consumer", + "label": "consumer", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored." + }, + "lazyStartProducer": { + "kind": "property", + "displayName": "Lazy Start Producer", + "group": "producer", + "label": "producer", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel\u0027s routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing." + }, + "basicPropertyBinding": { + "kind": "property", + "displayName": "Basic Property Binding", + "group": "advanced", + "label": "advanced", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities" + } + }, + "properties": { + "directoryName": { + "kind": "path", + "displayName": "Directory Name", + "group": "common", + "label": "", + "required": true, + "type": "string", + "javaType": "java.io.File", + "deprecated": false, + "deprecationNote": "", + "secret": false, + "description": "The starting directory" + }, + "charset": { + "kind": "parameter", + "displayName": "Charset", + "group": "common", + "label": "", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "This option is used to specify the encoding of the file. You can use this on the consumer, to specify the encodings of the files, which allow Camel to know the charset it should load the file content in case the file content is being accessed. Likewise when writing a file, you can use this option to specify which charset to write the file as well. Do mind that when writing the file Camel may have to read the message content into memory to be able to convert the data into the configured charset, so do not use this if you have big messages." + }, + "doneFileName": { + "kind": "parameter", + "displayName": "Done File Name", + "group": "common", + "label": "", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "Producer: If provided, then Camel will write a 2nd done file when the original file has been written. The done file will be empty. This option configures what file name to use. Either you can specify a fixed name. Or you can use dynamic placeholders. The done file will always be written in the same folder as the original file. Consumer: If provided, Camel will only consume files if a done file exists. This option configures what file name to use. Either you can specify a fixed name. Or you can use dynamic placeholders.The done file is always expected in the same folder as the original file. Only ${file.name} and ${file.name.next} is supported as dynamic placeholders." + }, + "fileName": { + "kind": "parameter", + "displayName": "File Name", + "group": "common", + "label": "", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "Use Expression such as File Language to dynamically set the filename. For consumers, it\u0027s used as a filename filter. For producers, it\u0027s used to evaluate the filename to write. If an expression is set, it take precedence over the CamelFileName header. (Note: The header itself can also be an Expression). The expression options support both String and Expression types. If the expression is a String type, it is always evaluated using the File Language. If the expression is an Expression type, the specified Expression type is used - this allows you, for instance, to use OGNL expressions. For the consumer, you can use it to filter filenames, so you can for instance consume today\u0027s file using the File Language syntax: mydata-${date:now:yyyyMMdd}.txt. The producers support the CamelOverruleFileName header which takes precedence over any existing CamelFileName header; the CamelOverruleFileName is a header that is used only once, and makes it easier as this avoids to temporary store CamelFileName and have to restore it afterwards." + }, + "bridgeErrorHandler": { + "kind": "parameter", + "displayName": "Bridge Error Handler", + "group": "consumer", + "label": "consumer", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored." + }, + "delete": { + "kind": "parameter", + "displayName": "Delete", + "group": "consumer", + "label": "consumer", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "If true, the file will be deleted after it is processed successfully." + }, + "moveFailed": { + "kind": "parameter", + "displayName": "Move Failed", + "group": "consumer", + "label": "consumer", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "Sets the move failure expression based on Simple language. For example, to move files into a .error subdirectory use: .error. Note: When moving the files to the fail location Camel will handle the error and will not pick up the file again." + }, + "noop": { + "kind": "parameter", + "displayName": "Noop", + "group": "consumer", + "label": "consumer", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "If true, the file is not moved or deleted in any way. This option is good for readonly data, or for ETL type requirements. If noop\u003dtrue, Camel will set idempotent\u003dtrue as well, to avoid consuming the same files over and over again." + }, + "preMove": { + "kind": "parameter", + "displayName": "Pre Move", + "group": "consumer", + "label": "consumer", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "Expression (such as File Language) used to dynamically set the filename when moving it before processing. For example to move in-progress files into the order directory set this value to order." + }, + "preSort": { + "kind": "parameter", + "displayName": "Pre Sort", + "group": "consumer", + "label": "consumer", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "When pre-sort is enabled then the consumer will sort the file and directory names during polling, that was retrieved from the file system. You may want to do this in case you need to operate on the files in a sorted order. The pre-sort is executed before the consumer starts to filter, and accept files to process by Camel. This option is default\u003dfalse meaning disabled." + }, + "recursive": { + "kind": "parameter", + "displayName": "Recursive", + "group": "consumer", + "label": "consumer", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "If a directory, will look for files in all the sub-directories as well." + }, + "sendEmptyMessageWhenIdle": { + "kind": "parameter", + "displayName": "Send Empty Message When Idle", + "group": "consumer", + "label": "consumer", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "If the polling consumer did not poll any files, you can enable this option to send an empty message (no body) instead." + }, + "directoryMustExist": { + "kind": "parameter", + "displayName": "Directory Must Exist", + "group": "consumer (advanced)", + "label": "consumer,advanced", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "Similar to the startingDirectoryMustExist option but this applies during polling (after starting the consumer)." + }, + "exceptionHandler": { + "kind": "parameter", + "displayName": "Exception Handler", + "group": "consumer (advanced)", + "label": "consumer,advanced", + "required": false, + "type": "object", + "javaType": "org.apache.camel.spi.ExceptionHandler", + "optionalPrefix": "consumer.", + "deprecated": false, + "secret": false, + "description": "To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this option is not in use. By default the consumer will deal with exceptions, that will be logged at WARN or ERROR level and ignored." + }, + "exchangePattern": { + "kind": "parameter", + "displayName": "Exchange Pattern", + "group": "consumer (advanced)", + "label": "consumer,advanced", + "required": false, + "type": "object", + "javaType": "org.apache.camel.ExchangePattern", + "enum": [ + "InOnly", + "InOut", + "InOptionalOut" + ], + "deprecated": false, + "secret": false, + "description": "Sets the exchange pattern when the consumer creates an exchange." + }, + "extendedAttributes": { + "kind": "parameter", + "displayName": "Extended Attributes", + "group": "consumer (advanced)", + "label": "consumer,advanced", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "To define which file attributes of interest. Like posix:permissions,posix:owner,basic:lastAccessTime, it supports basic wildcard like posix:, basic:lastAccessTime" + }, + "inProgressRepository": { + "kind": "parameter", + "displayName": "In Progress Repository", + "group": "consumer (advanced)", + "label": "consumer,advanced", + "required": false, + "type": "object", + "javaType": "org.apache.camel.spi.IdempotentRepository", + "deprecated": false, + "secret": false, + "description": "A pluggable in-progress repository org.apache.camel.spi.IdempotentRepository. The in-progress repository is used to account the current in progress files being consumed. By default a memory based repository is used." + }, + "localWorkDirectory": { + "kind": "parameter", + "displayName": "Local Work Directory", + "group": "consumer (advanced)", + "label": "consumer,advanced", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "When consuming, a local work directory can be used to store the remote file content directly in local files, to avoid loading the content into memory. This is beneficial, if you consume a very big remote file and thus can conserve memory." + }, + "onCompletionExceptionHandler": { + "kind": "parameter", + "displayName": "On Completion Exception Handler", + "group": "consumer (advanced)", + "label": "consumer,advanced", + "required": false, + "type": "object", + "javaType": "org.apache.camel.spi.ExceptionHandler", + "deprecated": false, + "secret": false, + "description": "To use a custom org.apache.camel.spi.ExceptionHandler to handle any thrown exceptions that happens during the file on completion process where the consumer does either a commit or rollback. The default implementation will log any exception at WARN level and ignore." + }, + "pollStrategy": { + "kind": "parameter", + "displayName": "Poll Strategy", + "group": "consumer (advanced)", + "label": "consumer,advanced", + "required": false, + "type": "object", + "javaType": "org.apache.camel.spi.PollingConsumerPollStrategy", + "deprecated": false, + "secret": false, + "description": "A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing you to provide your custom implementation to control error handling usually occurred during the poll operation before an Exchange have been created and being routed in Camel." + }, + "probeContentType": { + "kind": "parameter", + "displayName": "Probe Content Type", + "group": "consumer (advanced)", + "label": "consumer,advanced", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "Whether to enable probing of the content type. If enable then the consumer uses Files#probeContentType(java.nio.file.Path) to determine the content-type of the file, and store that as a header with key Exchange#FILE_CONTENT_TYPE on the Message." + }, + "processStrategy": { + "kind": "parameter", + "displayName": "Process Strategy", + "group": "consumer (advanced)", + "label": "consumer,advanced", + "required": false, + "type": "object", + "javaType": "org.apache.camel.component.file.GenericFileProcessStrategy\u003cjava.io.File\u003e", + "deprecated": false, + "secret": false, + "description": "A pluggable org.apache.camel.component.file.GenericFileProcessStrategy allowing you to implement your own readLock option or similar. Can also be used when special conditions must be met before a file can be consumed, such as a special ready file exists. If this option is set then the readLock option does not apply." + }, + "startingDirectoryMustExist": { + "kind": "parameter", + "displayName": "Starting Directory Must Exist", + "group": "consumer (advanced)", + "label": "consumer,advanced", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "Whether the starting directory must exist. Mind that the autoCreate option is default enabled, which means the starting directory is normally auto created if it doesn\u0027t exist. You can disable autoCreate and enable this to ensure the starting directory must exist. Will thrown an exception if the directory doesn\u0027t exist." + }, + "startingDirectoryMustHaveAccess": { + "kind": "parameter", + "displayName": "Starting Directory Must Have Access", + "group": "consumer (advanced)", + "label": "consumer,advanced", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "Whether the starting directory has access permissions. Mind that the startingDirectoryMustExist parameter must be set to true in order to verify that the directory exists. Will thrown an exception if the directory doesn\u0027t have read and write permissions." + }, + "appendChars": { + "kind": "parameter", + "displayName": "Append Chars", + "group": "producer", + "label": "producer", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "Used to append characters (text) after writing files. This can for example be used to add new lines or other separators when writing and appending to existing files. To specify new-line (slash-n or slash-r) or tab (slash-t) characters then escape with an extra slash, eg slash-slash-n." + }, + "fileExist": { + "kind": "parameter", + "displayName": "File Exist", + "group": "producer", + "label": "producer", + "required": false, + "type": "object", + "javaType": "org.apache.camel.component.file.GenericFileExist", + "enum": [ + "Override", + "Append", + "Fail", + "Ignore", + "Move", + "TryRename" + ], + "deprecated": false, + "secret": false, + "defaultValue": "Override", + "description": "What to do if a file already exists with the same name. Override, which is the default, replaces the existing file. - Append - adds content to the existing file. - Fail - throws a GenericFileOperationException, indicating that there is already an existing file. - Ignore - silently ignores the problem and does not override the existing file, but assumes everything is okay. - Move - option requires to use the moveExisting option to be configured as well. The option eagerDeleteTargetFile can be used to control what to do if an moving the file, and there exists already an existing file, otherwise causing the move operation to fail. The Move option will move any existing files, before writing the target file. - TryRename is only applicable if tempFileName option is in use. This allows to try renaming the file from the temporary name to the actual name, without doing any exists check. This check may be faster on some file systems and especially FTP servers." + }, + "flatten": { + "kind": "parameter", + "displayName": "Flatten", + "group": "producer", + "label": "producer", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "Flatten is used to flatten the file name path to strip any leading paths, so it\u0027s just the file name. This allows you to consume recursively into sub-directories, but when you eg write the files to another directory they will be written in a single directory. Setting this to true on the producer enforces that any file name in CamelFileName header will be stripped for any leading paths." + }, + "jailStartingDirectory": { + "kind": "parameter", + "displayName": "Jail Starting Directory", + "group": "producer", + "label": "producer", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": true, + "description": "Used for jailing (restricting) writing files to the starting directory (and sub) only. This is enabled by default to not allow Camel to write files to outside directories (to be more secured out of the box). You can turn this off to allow writing files to directories outside the starting directory, such as parent or root folders." + }, + "lazyStartProducer": { + "kind": "parameter", + "displayName": "Lazy Start Producer", + "group": "producer", + "label": "producer", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel\u0027s routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing." + }, + "moveExisting": { + "kind": "parameter", + "displayName": "Move Existing", + "group": "producer", + "label": "producer", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "Expression (such as File Language) used to compute file name to use when fileExist\u003dMove is configured. To move files into a backup subdirectory just enter backup. This option only supports the following File Language tokens: file:name, file:name.ext, file:name.noext, file:onlyname, file:onlyname.noext, file:ext, and file:parent. Notice the file:parent is not supported by the FTP component, as the FTP component can only move any existing files to a relative directory based on current dir as base." + }, + "tempFileName": { + "kind": "parameter", + "displayName": "Temp File Name", + "group": "producer", + "label": "producer", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "The same as tempPrefix option but offering a more fine grained control on the naming of the temporary filename as it uses the File Language. The location for tempFilename is relative to the final file location in the option \u0027fileName\u0027, not the target directory in the base uri. For example if option fileName includes a directory prefix: dir/finalFilename then tempFileName is relative to that subdirectory dir." + }, + "tempPrefix": { + "kind": "parameter", + "displayName": "Temp Prefix", + "group": "producer", + "label": "producer", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "This option is used to write the file using a temporary name and then, after the write is complete, rename it to the real name. Can be used to identify files being written and also avoid consumers (not using exclusive read locks) reading in progress files. Is often used by FTP when uploading big files." + }, + "allowNullBody": { + "kind": "parameter", + "displayName": "Allow Null Body", + "group": "producer (advanced)", + "label": "producer,advanced", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "Used to specify if a null body is allowed during file writing. If set to true then an empty file will be created, when set to false, and attempting to send a null body to the file component, a GenericFileWriteException of \u0027Cannot write null body to file.\u0027 will be thrown. If the fileExist option is set to \u0027Override\u0027, then the file will be truncated, and if set to append the file will remain unchanged." + }, + "chmod": { + "kind": "parameter", + "displayName": "Chmod", + "group": "producer (advanced)", + "label": "producer,advanced", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "Specify the file permissions which is sent by the producer, the chmod value must be between 000 and 777; If there is a leading digit like in 0755 we will ignore it." + }, + "chmodDirectory": { + "kind": "parameter", + "displayName": "Chmod Directory", + "group": "producer (advanced)", + "label": "producer,advanced", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "Specify the directory permissions used when the producer creates missing directories, the chmod value must be between 000 and 777; If there is a leading digit like in 0755 we will ignore it." + }, + "eagerDeleteTargetFile": { + "kind": "parameter", + "displayName": "Eager Delete Target File", + "group": "producer (advanced)", + "label": "producer,advanced", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": true, + "description": "Whether or not to eagerly delete any existing target file. This option only applies when you use fileExists\u003dOverride and the tempFileName option as well. You can use this to disable (set it to false) deleting the target file before the temp file is written. For example you may write big files and want the target file to exists during the temp file is being written. This ensure the target file is only deleted until the very last moment, just before the temp file is being renamed to the target filename. This option is also used to control whether to delete any existing files when fileExist\u003dMove is enabled, and an existing file exists. If this option copyAndDeleteOnRenameFails false, then an exception will be thrown if an existing file existed, if its true, then the existing file is deleted before the move operation." + }, + "forceWrites": { + "kind": "parameter", + "displayName": "Force Writes", + "group": "producer (advanced)", + "label": "producer,advanced", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": true, + "description": "Whether to force syncing writes to the file system. You can turn this off if you do not want this level of guarantee, for example if writing to logs / audit logs etc; this would yield better performance." + }, + "keepLastModified": { + "kind": "parameter", + "displayName": "Keep Last Modified", + "group": "producer (advanced)", + "label": "producer,advanced", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "Will keep the last modified timestamp from the source file (if any). Will use the Exchange.FILE_LAST_MODIFIED header to located the timestamp. This header can contain either a java.util.Date or long with the timestamp. If the timestamp exists and the option is enabled it will set this timestamp on the written file. Note: This option only applies to the file producer. You cannot use this option with any of the ftp producers." + }, + "moveExistingFileStrategy": { + "kind": "parameter", + "displayName": "Move Existing File Strategy", + "group": "producer (advanced)", + "label": "producer,advanced", + "required": false, + "type": "object", + "javaType": "org.apache.camel.component.file.strategy.FileMoveExistingStrategy", + "deprecated": false, + "secret": false, + "description": "Strategy (Custom Strategy) used to move file with special naming token to use when fileExist\u003dMove is configured. By default, there is an implementation used if no custom strategy is provided" + }, + "autoCreate": { + "kind": "parameter", + "displayName": "Auto Create", + "group": "advanced", + "label": "advanced", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": true, + "description": "Automatically create missing directories in the file\u0027s pathname. For the file consumer, that means creating the starting directory. For the file producer, it means the directory the files should be written to." + }, + "basicPropertyBinding": { + "kind": "parameter", + "displayName": "Basic Property Binding", + "group": "advanced", + "label": "advanced", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "Whether the endpoint should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities" + }, + "bufferSize": { + "kind": "parameter", + "displayName": "Buffer Size", + "group": "advanced", + "label": "advanced", + "required": false, + "type": "integer", + "javaType": "int", + "deprecated": false, + "secret": false, + "defaultValue": 131072, + "description": "Buffer size in bytes used for writing files (or in case of FTP for downloading and uploading files)." + }, + "copyAndDeleteOnRenameFail": { + "kind": "parameter", + "displayName": "Copy And Delete On Rename Fail", + "group": "advanced", + "label": "advanced", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": true, + "description": "Whether to fallback and do a copy and delete file, in case the file could not be renamed directly. This option is not available for the FTP component." + }, + "renameUsingCopy": { + "kind": "parameter", + "displayName": "Rename Using Copy", + "group": "advanced", + "label": "advanced", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "Perform rename operations using a copy and delete strategy. This is primarily used in environments where the regular rename operation is unreliable (e.g. across different file systems or networks). This option takes precedence over the copyAndDeleteOnRenameFail parameter that will automatically fall back to the copy and delete strategy, but only after additional delays." + }, + "synchronous": { + "kind": "parameter", + "displayName": "Synchronous", + "group": "advanced", + "label": "advanced", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported)." + }, + "antExclude": { + "kind": "parameter", + "displayName": "Ant Exclude", + "group": "filter", + "label": "consumer,filter", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "Ant style filter exclusion. If both antInclude and antExclude are used, antExclude takes precedence over antInclude. Multiple exclusions may be specified in comma-delimited format." + }, + "antFilterCaseSensitive": { + "kind": "parameter", + "displayName": "Ant Filter Case Sensitive", + "group": "filter", + "label": "consumer,filter", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": true, + "description": "Sets case sensitive flag on ant filter." + }, + "antInclude": { + "kind": "parameter", + "displayName": "Ant Include", + "group": "filter", + "label": "consumer,filter", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "Ant style filter inclusion. Multiple inclusions may be specified in comma-delimited format." + }, + "eagerMaxMessagesPerPoll": { + "kind": "parameter", + "displayName": "Eager Max Messages Per Poll", + "group": "filter", + "label": "consumer,filter", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": true, + "description": "Allows for controlling whether the limit from maxMessagesPerPoll is eager or not. If eager then the limit is during the scanning of files. Where as false would scan all files, and then perform sorting. Setting this option to false allows for sorting all files first, and then limit the poll. Mind that this requires a higher memory usage as all file details are in memory to perform the sorting." + }, + "exclude": { + "kind": "parameter", + "displayName": "Exclude", + "group": "filter", + "label": "consumer,filter", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "Is used to exclude files, if filename matches the regex pattern (matching is case in-senstive). Notice if you use symbols such as plus sign and others you would need to configure this using the RAW() syntax if configuring this as an endpoint uri. See more details at configuring endpoint uris" + }, + "filter": { + "kind": "parameter", + "displayName": "Filter", + "group": "filter", + "label": "consumer,filter", + "required": false, + "type": "object", + "javaType": "org.apache.camel.component.file.GenericFileFilter\u003cjava.io.File\u003e", + "deprecated": false, + "secret": false, + "description": "Pluggable filter as a org.apache.camel.component.file.GenericFileFilter class. Will skip files if filter returns false in its accept() method." + }, + "filterDirectory": { + "kind": "parameter", + "displayName": "Filter Directory", + "group": "filter", + "label": "consumer,filter", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "Filters the directory based on Simple language. For example to filter on current date, you can use a simple date pattern such as ${date:now:yyyMMdd}" + }, + "filterFile": { + "kind": "parameter", + "displayName": "Filter File", + "group": "filter", + "label": "consumer,filter", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "Filters the file based on Simple language. For example to filter on file size, you can use ${file:size} 5000" + }, + "idempotent": { + "kind": "parameter", + "displayName": "Idempotent", + "group": "filter", + "label": "consumer,filter", + "required": false, + "type": "boolean", + "javaType": "java.lang.Boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "Option to use the Idempotent Consumer EIP pattern to let Camel skip already processed files. Will by default use a memory based LRUCache that holds 1000 entries. If noop\u003dtrue then idempotent will be enabled as well to avoid consuming the same files over and over again." + }, + "idempotentKey": { + "kind": "parameter", + "displayName": "Idempotent Key", + "group": "filter", + "label": "consumer,filter", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "To use a custom idempotent key. By default the absolute path of the file is used. You can use the File Language, for example to use the file name and file size, you can do: idempotentKey\u003d${file:name}-${file:size}" + }, + "idempotentRepository": { + "kind": "parameter", + "displayName": "Idempotent Repository", + "group": "filter", + "label": "consumer,filter", + "required": false, + "type": "object", + "javaType": "org.apache.camel.spi.IdempotentRepository", + "deprecated": false, + "secret": false, + "description": "A pluggable repository org.apache.camel.spi.IdempotentRepository which by default use MemoryMessageIdRepository if none is specified and idempotent is true." + }, + "include": { + "kind": "parameter", + "displayName": "Include", + "group": "filter", + "label": "consumer,filter", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "Is used to include files, if filename matches the regex pattern (matching is case in-sensitive). Notice if you use symbols such as plus sign and others you would need to configure this using the RAW() syntax if configuring this as an endpoint uri. See more details at configuring endpoint uris" + }, + "maxDepth": { + "kind": "parameter", + "displayName": "Max Depth", + "group": "filter", + "label": "consumer,filter", + "required": false, + "type": "integer", + "javaType": "int", + "deprecated": false, + "secret": false, + "defaultValue": 2147483647, + "description": "The maximum depth to traverse when recursively processing a directory." + }, + "maxMessagesPerPoll": { + "kind": "parameter", + "displayName": "Max Messages Per Poll", + "group": "filter", + "label": "consumer,filter", + "required": false, + "type": "integer", + "javaType": "int", + "deprecated": false, + "secret": false, + "description": "To define a maximum messages to gather per poll. By default no maximum is set. Can be used to set a limit of e.g. 1000 to avoid when starting up the server that there are thousands of files. Set a value of 0 or negative to disabled it. Notice: If this option is in use then the File and FTP components will limit before any sorting. For example if you have 100000 files and use maxMessagesPerPoll\u003d500, then only the first 500 files will be picked up, and then sorted. You can use the eagerMaxMessagesPerPoll option and set this to false to allow to scan all files first and then sort afterwards." + }, + "minDepth": { + "kind": "parameter", + "displayName": "Min Depth", + "group": "filter", + "label": "consumer,filter", + "required": false, + "type": "integer", + "javaType": "int", + "deprecated": false, + "secret": false, + "description": "The minimum depth to start processing when recursively processing a directory. Using minDepth\u003d1 means the base directory. Using minDepth\u003d2 means the first sub directory." + }, + "move": { + "kind": "parameter", + "displayName": "Move", + "group": "filter", + "label": "consumer,filter", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "Expression (such as Simple Language) used to dynamically set the filename when moving it after processing. To move files into a .done subdirectory just enter .done." + }, + "exclusiveReadLockStrategy": { + "kind": "parameter", + "displayName": "Exclusive Read Lock Strategy", + "group": "lock", + "label": "consumer,lock", + "required": false, + "type": "object", + "javaType": "org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy\u003cjava.io.File\u003e", + "deprecated": false, + "secret": false, + "description": "Pluggable read-lock as a org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy implementation." + }, + "readLock": { + "kind": "parameter", + "displayName": "Read Lock", + "group": "lock", + "label": "consumer,lock", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "enum": [ + "none", + "markerFile", + "fileLock", + "rename", + "changed", + "idempotent", + "idempotent-changed", + "idempotent-rename" + ], + "deprecated": false, + "secret": false, + "defaultValue": "none", + "description": "Used by consumer, to only poll the files if it has exclusive read-lock on the file (i.e. the file is not in-progress or being written). Camel will wait until the file lock is granted. This option provides the build in strategies: - none - No read lock is in use - markerFile - Camel creates a marker file (fileName.camelLock) and then holds a lock on it. This option is not available for the FTP component - changed - Changed is using file length/modification timestamp to detect whether the file is currently being copied or not. Will at least use 1 sec to determine this, so this option cannot consume files as fast as the others, but can be more reliable as the JDK IO API cannot always determine whether a file is currently being used by another process. The option readLockCheckInterval can be used to set the check frequency. - fileLock - is for using java.nio.channels.FileLock. This option is not avail for Windows OS and the FTP component. This approach should be avoided when accessing a remote file system via a mount/share unless that file system supports distributed file locks. - rename - rename is for using a try to rename the file as a test if we can get exclusive read-lock. - idempotent - (only for file component) idempotent is for using a idempotentRepository as the read-lock. This allows to use read locks that supports clustering if the idempotent repository implementation supports that. - idempotent-changed - (only for file component) idempotent-changed is for using a idempotentRepository and changed as the combined read-lock. This allows to use read locks that supports clustering if the idempotent repository implementation supports that. - idempotent-rename - (only for file component) idempotent-rename is for using a idempotentRepository and rename as the combined read-lock. This allows to use read locks that supports clustering if the idempotent repository implementation supports that.Notice: The various read locks is not all suited to work in clustered mode, where concurrent consumers on different nodes is competing for the same files on a shared file system. The markerFile using a close to atomic operation to create the empty marker file, but its not guaranteed to work in a cluster. The fileLock may work better but then the file system need to support distributed file locks, and so on. Using the idempotent read lock can support clustering if the idempotent repository supports clustering, such as Hazelcast Component or Infinispan." + }, + "readLockCheckInterval": { + "kind": "parameter", + "displayName": "Read Lock Check Interval", + "group": "lock", + "label": "consumer,lock", + "required": false, + "type": "integer", + "javaType": "long", + "deprecated": false, + "secret": false, + "defaultValue": 1000, + "description": "Interval in millis for the read-lock, if supported by the read lock. This interval is used for sleeping between attempts to acquire the read lock. For example when using the changed read lock, you can set a higher interval period to cater for slow writes. The default of 1 sec. may be too fast if the producer is very slow writing the file. Notice: For FTP the default readLockCheckInterval is 5000. The readLockTimeout value must be higher than readLockCheckInterval, but a rule of thumb is to have a timeout that is at least 2 or more times higher than the readLockCheckInterval. This is needed to ensure that amble time is allowed for the read lock process to try to grab the lock before the timeout was hit." + }, + "readLockDeleteOrphanLockFiles": { + "kind": "parameter", + "displayName": "Read Lock Delete Orphan Lock Files", + "group": "lock", + "label": "consumer,lock", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": true, + "description": "Whether or not read lock with marker files should upon startup delete any orphan read lock files, which may have been left on the file system, if Camel was not properly shutdown (such as a JVM crash). If turning this option to false then any orphaned lock file will cause Camel to not attempt to pickup that file, this could also be due another node is concurrently reading files from the same shared directory." + }, + "readLockIdempotentReleaseAsync": { + "kind": "parameter", + "displayName": "Read Lock Idempotent Release Async", + "group": "lock", + "label": "consumer,lock", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "Whether the delayed release task should be synchronous or asynchronous. See more details at the readLockIdempotentReleaseDelay option." + }, + "readLockIdempotentReleaseAsyncPoolSize": { + "kind": "parameter", + "displayName": "Read Lock Idempotent Release Async Pool Size", + "group": "lock", + "label": "consumer,lock", + "required": false, + "type": "integer", + "javaType": "int", + "deprecated": false, + "secret": false, + "description": "The number of threads in the scheduled thread pool when using asynchronous release tasks. Using a default of 1 core threads should be sufficient in almost all use-cases, only set this to a higher value if either updating the idempotent repository is slow, or there are a lot of files to process. This option is not in-use if you use a shared thread pool by configuring the readLockIdempotentReleaseExecutorService option. See more details at the readLockIdempotentReleaseDelay option." + }, + "readLockIdempotentReleaseDelay": { + "kind": "parameter", + "displayName": "Read Lock Idempotent Release Delay", + "group": "lock", + "label": "consumer,lock", + "required": false, + "type": "integer", + "javaType": "int", + "deprecated": false, + "secret": false, + "description": "Whether to delay the release task for a period of millis. This can be used to delay the release tasks to expand the window when a file is regarded as read-locked, in an active/active cluster scenario with a shared idempotent repository, to ensure other nodes cannot potentially scan and acquire the same file, due to race-conditions. By expanding the time-window of the release tasks helps prevents these situations. Note delaying is only needed if you have configured readLockRemoveOnCommit to true." + }, + "readLockIdempotentReleaseExecutorService": { + "kind": "parameter", + "displayName": "Read Lock Idempotent Release Executor Service", + "group": "lock", + "label": "consumer,lock", + "required": false, + "type": "object", + "javaType": "java.util.concurrent.ScheduledExecutorService", + "deprecated": false, + "secret": false, + "description": "To use a custom and shared thread pool for asynchronous release tasks. See more details at the readLockIdempotentReleaseDelay option." + }, + "readLockLoggingLevel": { + "kind": "parameter", + "displayName": "Read Lock Logging Level", + "group": "lock", + "label": "consumer,lock", + "required": false, + "type": "object", + "javaType": "org.apache.camel.LoggingLevel", + "enum": [ + "TRACE", + "DEBUG", + "INFO", + "WARN", + "ERROR", + "OFF" + ], + "deprecated": false, + "secret": false, + "defaultValue": "DEBUG", + "description": "Logging level used when a read lock could not be acquired. By default a DEBUG is logged. You can change this level, for example to OFF to not have any logging. This option is only applicable for readLock of types: changed, fileLock, idempotent, idempotent-changed, idempotent-rename, rename." + }, + "readLockMarkerFile": { + "kind": "parameter", + "displayName": "Read Lock Marker File", + "group": "lock", + "label": "consumer,lock", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": true, + "description": "Whether to use marker file with the changed, rename, or exclusive read lock types. By default a marker file is used as well to guard against other processes picking up the same files. This behavior can be turned off by setting this option to false. For example if you do not want to write marker files to the file systems by the Camel application." + }, + "readLockMinAge": { + "kind": "parameter", + "displayName": "Read Lock Min Age", + "group": "lock", + "label": "consumer,lock", + "required": false, + "type": "integer", + "javaType": "long", + "deprecated": false, + "secret": false, + "defaultValue": 0, + "description": "This option is applied only for readLock\u003dchanged. It allows to specify a minimum age the file must be before attempting to acquire the read lock. For example use readLockMinAge\u003d300s to require the file is at last 5 minutes old. This can speedup the changed read lock as it will only attempt to acquire files which are at least that given age." + }, + "readLockMinLength": { + "kind": "parameter", + "displayName": "Read Lock Min Length", + "group": "lock", + "label": "consumer,lock", + "required": false, + "type": "integer", + "javaType": "long", + "deprecated": false, + "secret": false, + "defaultValue": 1, + "description": "This option is applied only for readLock\u003dchanged. It allows you to configure a minimum file length. By default Camel expects the file to contain data, and thus the default value is 1. You can set this option to zero, to allow consuming zero-length files." + }, + "readLockRemoveOnCommit": { + "kind": "parameter", + "displayName": "Read Lock Remove On Commit", + "group": "lock", + "label": "consumer,lock", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "This option is applied only for readLock\u003didempotent. It allows to specify whether to remove the file name entry from the idempotent repository when processing the file is succeeded and a commit happens. By default the file is not removed which ensures that any race-condition do not occur so another active node may attempt to grab the file. Instead the idempotent repository may support eviction strategies that you can configure to evict the file name entry after X minutes - this ensures no problems with race conditions. See more details at the readLockIdempotentReleaseDelay option." + }, + "readLockRemoveOnRollback": { + "kind": "parameter", + "displayName": "Read Lock Remove On Rollback", + "group": "lock", + "label": "consumer,lock", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": true, + "description": "This option is applied only for readLock\u003didempotent. It allows to specify whether to remove the file name entry from the idempotent repository when processing the file failed and a rollback happens. If this option is false, then the file name entry is confirmed (as if the file did a commit)." + }, + "readLockTimeout": { + "kind": "parameter", + "displayName": "Read Lock Timeout", + "group": "lock", + "label": "consumer,lock", + "required": false, + "type": "integer", + "javaType": "long", + "deprecated": false, + "secret": false, + "defaultValue": 10000, + "description": "Optional timeout in millis for the read-lock, if supported by the read-lock. If the read-lock could not be granted and the timeout triggered, then Camel will skip the file. At next poll Camel, will try the file again, and this time maybe the read-lock could be granted. Use a value of 0 or lower to indicate forever. Currently fileLock, changed and rename support the timeout. Notice: For FTP the default readLockTimeout value is 20000 instead of 10000. The readLockTimeout value must be higher than readLockCheckInterval, but a rule of thumb is to have a timeout that is at least 2 or more times higher than the readLockCheckInterval. This is needed to ensure that amble time is allowed for the read lock process to try to grab the lock before the timeout was hit." + }, + "backoffErrorThreshold": { + "kind": "parameter", + "displayName": "Backoff Error Threshold", + "group": "scheduler", + "label": "consumer,scheduler", + "required": false, + "type": "integer", + "javaType": "int", + "deprecated": false, + "secret": false, + "description": "The number of subsequent error polls (failed due some error) that should happen before the backoffMultipler should kick-in." + }, + "backoffIdleThreshold": { + "kind": "parameter", + "displayName": "Backoff Idle Threshold", + "group": "scheduler", + "label": "consumer,scheduler", + "required": false, + "type": "integer", + "javaType": "int", + "deprecated": false, + "secret": false, + "description": "The number of subsequent idle polls that should happen before the backoffMultipler should kick-in." + }, + "backoffMultiplier": { + "kind": "parameter", + "displayName": "Backoff Multiplier", + "group": "scheduler", + "label": "consumer,scheduler", + "required": false, + "type": "integer", + "javaType": "int", + "deprecated": false, + "secret": false, + "description": "To let the scheduled polling consumer backoff if there has been a number of subsequent idles/errors in a row. The multiplier is then the number of polls that will be skipped before the next actual attempt is happening again. When this option is in use then backoffIdleThreshold and/or backoffErrorThreshold must also be configured." + }, + "delay": { + "kind": "parameter", + "displayName": "Delay", + "group": "scheduler", + "label": "consumer,scheduler", + "required": false, + "type": "integer", + "javaType": "long", + "deprecated": false, + "secret": false, + "defaultValue": 500, + "description": "Milliseconds before the next poll." + }, + "greedy": { + "kind": "parameter", + "displayName": "Greedy", + "group": "scheduler", + "label": "consumer,scheduler", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "If greedy is enabled, then the ScheduledPollConsumer will run immediately again, if the previous run polled 1 or more messages." + }, + "initialDelay": { + "kind": "parameter", + "displayName": "Initial Delay", + "group": "scheduler", + "label": "consumer,scheduler", + "required": false, + "type": "integer", + "javaType": "long", + "deprecated": false, + "secret": false, + "defaultValue": 1000, + "description": "Milliseconds before the first poll starts." + }, + "repeatCount": { + "kind": "parameter", + "displayName": "Repeat Count", + "group": "scheduler", + "label": "consumer,scheduler", + "required": false, + "type": "integer", + "javaType": "long", + "deprecated": false, + "secret": false, + "defaultValue": 0, + "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." + }, + "runLoggingLevel": { + "kind": "parameter", + "displayName": "Run Logging Level", + "group": "scheduler", + "label": "consumer,scheduler", + "required": false, + "type": "object", + "javaType": "org.apache.camel.LoggingLevel", + "enum": [ + "TRACE", + "DEBUG", + "INFO", + "WARN", + "ERROR", + "OFF" + ], + "deprecated": false, + "secret": false, + "defaultValue": "TRACE", + "description": "The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that." + }, + "scheduledExecutorService": { + "kind": "parameter", + "displayName": "Scheduled Executor Service", + "group": "scheduler", + "label": "consumer,scheduler", + "required": false, + "type": "object", + "javaType": "java.util.concurrent.ScheduledExecutorService", + "deprecated": false, + "secret": false, + "description": "Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." + }, + "scheduler": { + "kind": "parameter", + "displayName": "Scheduler", + "group": "scheduler", + "label": "consumer,scheduler", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "enum": [ + "none", + "spring", + "quartz" + ], + "deprecated": false, + "secret": false, + "defaultValue": "none", + "description": "To use a cron scheduler from either camel-spring or camel-quartz component" + }, + "schedulerProperties": { + "kind": "parameter", + "displayName": "Scheduler Properties", + "group": "scheduler", + "label": "consumer,scheduler", + "required": false, + "type": "object", + "javaType": "java.util.Map\u003cjava.lang.String, java.lang.Object\u003e", + "prefix": "scheduler.", + "multiValue": true, + "deprecated": false, + "secret": false, + "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." + }, + "startScheduler": { + "kind": "parameter", + "displayName": "Start Scheduler", + "group": "scheduler", + "label": "consumer,scheduler", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": true, + "description": "Whether the scheduler should be auto started." + }, + "timeUnit": { + "kind": "parameter", + "displayName": "Time Unit", + "group": "scheduler", + "label": "consumer,scheduler", + "required": false, + "type": "object", + "javaType": "java.util.concurrent.TimeUnit", + "enum": [ + "NANOSECONDS", + "MICROSECONDS", + "MILLISECONDS", + "SECONDS", + "MINUTES", + "HOURS", + "DAYS" + ], + "deprecated": false, + "secret": false, + "defaultValue": "MILLISECONDS", + "description": "Time unit for initialDelay and delay options." + }, + "useFixedDelay": { + "kind": "parameter", + "displayName": "Use Fixed Delay", + "group": "scheduler", + "label": "consumer,scheduler", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": true, + "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details." + }, + "shuffle": { + "kind": "parameter", + "displayName": "Shuffle", + "group": "sort", + "label": "consumer,sort", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "secret": false, + "defaultValue": false, + "description": "To shuffle the list of files (sort in random order)" + }, + "sortBy": { + "kind": "parameter", + "displayName": "Sort By", + "group": "sort", + "label": "consumer,sort", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "secret": false, + "description": "Built-in sort by using the File Language. Supports nested sorts, so you can have a sort by file name and as a 2nd group sort by modified date." + }, + "sorter": { + "kind": "parameter", + "displayName": "Sorter", + "group": "sort", + "label": "consumer,sort", + "required": false, + "type": "object", + "javaType": "java.util.Comparator\u003corg.apache.camel.component.file.GenericFile\u003cjava.io.File\u003e\u003e", + "deprecated": false, + "secret": false, + "description": "Pluggable sorter as a java.util.Comparator class." + } + } + } +} diff --git a/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/ru/entaxy/templates/file-adapter/init.ftl b/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/ru/entaxy/templates/file-adapter/init.ftl index df1a1f3..f1826fd 100644 --- a/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/ru/entaxy/templates/file-adapter/init.ftl +++ b/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/ru/entaxy/templates/file-adapter/init.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ file-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -34,11 +34,34 @@ + [#if properties??] + [#if properties.ext_createResourceProvider??] + [#if properties.ext_createResourceProvider] + + + + + + + + + + + + + [/#if] + [/#if] + [/#if] + [#if properties??] [#list properties as key, value] - [#if !key?starts_with("##") && !key?starts_with("__")] [#-- we skip additional properties --] + [#if !key?starts_with("##") && !key?starts_with("__") && !key?starts_with("ext_")] [#-- we skip additional properties --] + [#if key?starts_with("file_")] [#-- we add parent component properties --] + + [#else] + [/#if] [/#if] [/#list] [/#if] diff --git a/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/from.ftl b/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/from.ftl index 02f4bd4..b792993 100644 --- a/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/from.ftl +++ b/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/from.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ file-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/init.ftl b/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/init.ftl index 5896815..42e6b1a 100644 --- a/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/init.ftl +++ b/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/init.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ file-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/queryParameters.ftl b/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/queryParameters.ftl index e054566..64e66a6 100644 --- a/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/queryParameters.ftl +++ b/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/queryParameters.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ file-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/ref.ftl b/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/ref.ftl index f28ca3e..913ff8e 100644 --- a/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/ref.ftl +++ b/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/ref.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ file-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/to.ftl b/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/to.ftl index 76a1139..d8896fe 100644 --- a/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/to.ftl +++ b/platform/runtime/base/connecting/adapter/file-adapter/src/main/resources/template/to.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ file-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/h2-adapter/pom.xml b/platform/runtime/base/connecting/adapter/h2-adapter/pom.xml index b965466..8753c3a 100644 --- a/platform/runtime/base/connecting/adapter/h2-adapter/pom.xml +++ b/platform/runtime/base/connecting/adapter/h2-adapter/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.base.connecting adapter - 1.8.2.2 + 1.8.3 4.0.0 @@ -31,7 +30,7 @@ true - + diff --git a/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/example/org.ops4j.datasource-entaxy.esb.storage.cfg b/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/example/org.ops4j.datasource-entaxy.esb.storage.cfg index 18fdc12..08a7fc7 100644 --- a/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/example/org.ops4j.datasource-entaxy.esb.storage.cfg +++ b/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/example/org.ops4j.datasource-entaxy.esb.storage.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # h2-adapter # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/template/init.ftl b/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/template/init.ftl index 0451ea0..edb0811 100644 --- a/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/template/init.ftl +++ b/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/template/init.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ h2-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/template/queryParameters.ftl b/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/template/queryParameters.ftl index a10de26..dbd719e 100644 --- a/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/template/queryParameters.ftl +++ b/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/template/queryParameters.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ h2-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/template/ref.ftl b/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/template/ref.ftl index 3ddd934..c6aaf84 100644 --- a/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/template/ref.ftl +++ b/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/template/ref.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ h2-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -20,6 +20,5 @@ ~~~~~~/licensing~~~~~~ --] - diff --git a/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/template/to.ftl b/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/template/to.ftl index 7cd1fb7..9703625 100644 --- a/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/template/to.ftl +++ b/platform/runtime/base/connecting/adapter/h2-adapter/src/main/resources/template/to.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ h2-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -20,6 +20,5 @@ ~~~~~~/licensing~~~~~~ --] - [#include 'queryParameters.ftl'] diff --git a/platform/runtime/base/connecting/adapter/jms-adapter/pom.xml b/platform/runtime/base/connecting/adapter/jms-adapter/pom.xml index 5037dbe..2afc500 100644 --- a/platform/runtime/base/connecting/adapter/jms-adapter/pom.xml +++ b/platform/runtime/base/connecting/adapter/jms-adapter/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.base.connecting adapter - 1.8.2.2 + 1.8.3 4.0.0 @@ -30,7 +29,7 @@ true - + diff --git a/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/from.ftl b/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/from.ftl index f39c308..e45e3d3 100644 --- a/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/from.ftl +++ b/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/from.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ jms-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/init.ftl b/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/init.ftl index 8084bfb..718e1d0 100644 --- a/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/init.ftl +++ b/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/init.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ jms-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/queryParameters.ftl b/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/queryParameters.ftl index ea5bdac..55c152c 100644 --- a/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/queryParameters.ftl +++ b/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/queryParameters.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ jms-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/ref.ftl b/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/ref.ftl index f595ae6..1d643e1 100644 --- a/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/ref.ftl +++ b/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/ref.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ jms-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/to.ftl b/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/to.ftl index fb65516..032c97c 100644 --- a/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/to.ftl +++ b/platform/runtime/base/connecting/adapter/jms-adapter/src/main/resources/template/to.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ jms-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/pom.xml b/platform/runtime/base/connecting/adapter/pom.xml index 6a96087..b45de2e 100644 --- a/platform/runtime/base/connecting/adapter/pom.xml +++ b/platform/runtime/base/connecting/adapter/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.base connecting - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/base/connecting/adapter/postgresql-adapter/pom.xml b/platform/runtime/base/connecting/adapter/postgresql-adapter/pom.xml index c854ca9..909827b 100644 --- a/platform/runtime/base/connecting/adapter/postgresql-adapter/pom.xml +++ b/platform/runtime/base/connecting/adapter/postgresql-adapter/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.base.connecting adapter - 1.8.2.2 + 1.8.3 4.0.0 @@ -30,7 +29,7 @@ true - + diff --git a/platform/runtime/base/connecting/adapter/postgresql-adapter/src/main/resources/template/init.ftl b/platform/runtime/base/connecting/adapter/postgresql-adapter/src/main/resources/template/init.ftl index 3ed1818..cd6f2d3 100644 --- a/platform/runtime/base/connecting/adapter/postgresql-adapter/src/main/resources/template/init.ftl +++ b/platform/runtime/base/connecting/adapter/postgresql-adapter/src/main/resources/template/init.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ postgresql-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/postgresql-adapter/src/main/resources/template/queryParameters.ftl b/platform/runtime/base/connecting/adapter/postgresql-adapter/src/main/resources/template/queryParameters.ftl index 842c6ad..02e966e 100644 --- a/platform/runtime/base/connecting/adapter/postgresql-adapter/src/main/resources/template/queryParameters.ftl +++ b/platform/runtime/base/connecting/adapter/postgresql-adapter/src/main/resources/template/queryParameters.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ postgresql-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/postgresql-adapter/src/main/resources/template/ref.ftl b/platform/runtime/base/connecting/adapter/postgresql-adapter/src/main/resources/template/ref.ftl index c3129ed..217e93b 100644 --- a/platform/runtime/base/connecting/adapter/postgresql-adapter/src/main/resources/template/ref.ftl +++ b/platform/runtime/base/connecting/adapter/postgresql-adapter/src/main/resources/template/ref.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ postgresql-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -20,6 +20,5 @@ ~~~~~~/licensing~~~~~~ --] - diff --git a/platform/runtime/base/connecting/adapter/postgresql-adapter/src/main/resources/template/to.ftl b/platform/runtime/base/connecting/adapter/postgresql-adapter/src/main/resources/template/to.ftl index 1ba0dad..b7f78a5 100644 --- a/platform/runtime/base/connecting/adapter/postgresql-adapter/src/main/resources/template/to.ftl +++ b/platform/runtime/base/connecting/adapter/postgresql-adapter/src/main/resources/template/to.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ postgresql-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -20,6 +20,5 @@ ~~~~~~/licensing~~~~~~ --] - [#include 'queryParameters.ftl'] diff --git a/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/pom.xml b/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/pom.xml index 43f8694..40f15ad 100644 --- a/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/pom.xml +++ b/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.base.connecting adapter - 1.8.2.2 + 1.8.3 4.0.0 @@ -30,7 +29,7 @@ true - + diff --git a/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/from.ftl b/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/from.ftl index 00a20a3..9954f69 100644 --- a/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/from.ftl +++ b/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/from.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ rabbitmq-amqp-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/init.ftl b/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/init.ftl index 5775243..1080930 100644 --- a/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/init.ftl +++ b/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/init.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ rabbitmq-amqp-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/queryParameters.ftl b/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/queryParameters.ftl index fc5f967..a72a2da 100644 --- a/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/queryParameters.ftl +++ b/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/queryParameters.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ rabbitmq-amqp-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/ref.ftl b/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/ref.ftl index ac1b88b..28393ae 100644 --- a/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/ref.ftl +++ b/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/ref.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ rabbitmq-amqp-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/to.ftl b/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/to.ftl index 53d47ef..42a6576 100644 --- a/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/to.ftl +++ b/platform/runtime/base/connecting/adapter/rabbitmq-amqp-adapter/src/main/resources/template/to.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ rabbitmq-amqp-adapter ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/connection/pom.xml b/platform/runtime/base/connecting/connection/pom.xml index 5678b61..1178ac1 100644 --- a/platform/runtime/base/connecting/connection/pom.xml +++ b/platform/runtime/base/connecting/connection/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.base connecting - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/base/connecting/connection/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/connection/Connection.java b/platform/runtime/base/connecting/connection/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/connection/Connection.java index 89912b7..9d8338f 100644 --- a/platform/runtime/base/connecting/connection/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/connection/Connection.java +++ b/platform/runtime/base/connecting/connection/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/connection/Connection.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connection * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/connection/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/connection/ConnectionImpl.java b/platform/runtime/base/connecting/connection/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/connection/ConnectionImpl.java index 10b2e3d..0f65b66 100644 --- a/platform/runtime/base/connecting/connection/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/connection/ConnectionImpl.java +++ b/platform/runtime/base/connecting/connection/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/connection/ConnectionImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connection * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/connection/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/connection/util/ConnectionUtil.java b/platform/runtime/base/connecting/connection/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/connection/util/ConnectionUtil.java index ca72cd6..4a104f7 100644 --- a/platform/runtime/base/connecting/connection/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/connection/util/ConnectionUtil.java +++ b/platform/runtime/base/connecting/connection/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/connection/util/ConnectionUtil.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connection * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/common-templates-collection/pom.xml b/platform/runtime/base/connecting/generator/common-templates-collection/pom.xml index 90c16e8..3107d92 100644 --- a/platform/runtime/base/connecting/generator/common-templates-collection/pom.xml +++ b/platform/runtime/base/connecting/generator/common-templates-collection/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime.base.connecting generator - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.base.connecting.generator common-templates-collection diff --git a/platform/runtime/base/connecting/generator/common-templates-collection/src/main/resources/ru/entaxy/templates/bundle.manifest.ftl b/platform/runtime/base/connecting/generator/common-templates-collection/src/main/resources/ru/entaxy/templates/bundle.manifest.ftl index 4a1d5a7..8e4e8ab 100644 --- a/platform/runtime/base/connecting/generator/common-templates-collection/src/main/resources/ru/entaxy/templates/bundle.manifest.ftl +++ b/platform/runtime/base/connecting/generator/common-templates-collection/src/main/resources/ru/entaxy/templates/bundle.manifest.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ common-templates-collection ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/common-templates-collection/src/main/resources/ru/entaxy/templates/common.config.ftl b/platform/runtime/base/connecting/generator/common-templates-collection/src/main/resources/ru/entaxy/templates/common.config.ftl index 3e16159..f458117 100644 --- a/platform/runtime/base/connecting/generator/common-templates-collection/src/main/resources/ru/entaxy/templates/common.config.ftl +++ b/platform/runtime/base/connecting/generator/common-templates-collection/src/main/resources/ru/entaxy/templates/common.config.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ common-templates-collection ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/ftl-generator/pom.xml b/platform/runtime/base/connecting/generator/ftl-generator/pom.xml index 299226d..a16d7ef 100644 --- a/platform/runtime/base/connecting/generator/ftl-generator/pom.xml +++ b/platform/runtime/base/connecting/generator/ftl-generator/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.base.connecting generator - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/base/connecting/generator/ftl-generator/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/ftl/FTLGenerator.java b/platform/runtime/base/connecting/generator/ftl-generator/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/ftl/FTLGenerator.java index de52563..ade393d 100644 --- a/platform/runtime/base/connecting/generator/ftl-generator/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/ftl/FTLGenerator.java +++ b/platform/runtime/base/connecting/generator/ftl-generator/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/ftl/FTLGenerator.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * ftl-generator * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -193,7 +193,7 @@ public class FTLGenerator extends AbstractSelfPublishGenerator Template temp = getTemplateByFullName(templateUrl, templateFullName); Object value = temp.getCustomAttribute(FTLGenerator.ATTR_GENERATED_TYPE); String type = null==value?null:value.toString(); - log.info("--TEMPLATE--\n" + templateUrl.toString() + templateFullName + "\ngenerated.type: " + (null==value?Generated.GENERATED_TYPE_UNKNOWN:value.toString())); + log.debug("--TEMPLATE--\n" + templateUrl.toString() + templateFullName + "\ngenerated.type: " + (null==value?Generated.GENERATED_TYPE_UNKNOWN:value.toString())); try (StringWriter writer = new StringWriter()) { temp.process(params, writer); return enrich(Generated.create(type, writer.toString())) @@ -268,9 +268,14 @@ public class FTLGenerator extends AbstractSelfPublishGenerator @Override protected URL getURL(String templateName) { try { + if (templateName.contains(":")) + return new URL(templateName); return new URL(templateUrl + templateName); } catch (MalformedURLException e) { - log.error(e.getMessage(), e); + // skip printing typical error + // while searching for template + if ((templateUrl!=null) || (!"root.ftl".equals(templateName))) + log.error(e.getMessage(), e); } return null; } diff --git a/platform/runtime/base/connecting/generator/generator-api/pom.xml b/platform/runtime/base/connecting/generator/generator-api/pom.xml index 32024ba..3230bab 100644 --- a/platform/runtime/base/connecting/generator/generator-api/pom.xml +++ b/platform/runtime/base/connecting/generator/generator-api/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.base.connecting generator - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/Template.java b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/Template.java index e1dd388..2ea8a20 100644 --- a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/Template.java +++ b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/Template.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/TemplateAwareGenerator.java b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/TemplateAwareGenerator.java index ed24c04..0d6d73a 100644 --- a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/TemplateAwareGenerator.java +++ b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/TemplateAwareGenerator.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/TemplateImpl.java b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/TemplateImpl.java index 2792e3b..86df9e3 100644 --- a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/TemplateImpl.java +++ b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/TemplateImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/TemplateService.java b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/TemplateService.java index 4c842f7..5d22b29 100644 --- a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/TemplateService.java +++ b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/TemplateService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/Activator.java b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/Activator.java index 29b9bc9..3f03da6 100644 --- a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/Activator.java +++ b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/Activator.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/LegacyTemplateAdapter.java b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/LegacyTemplateAdapter.java index d7b953d..ee444f5 100644 --- a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/LegacyTemplateAdapter.java +++ b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/LegacyTemplateAdapter.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/ProvidedTemplate.java b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/ProvidedTemplate.java index 9d435ea..351f645 100644 --- a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/ProvidedTemplate.java +++ b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/ProvidedTemplate.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateBundleTracker.java b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateBundleTracker.java index c3585c9..72f4312 100644 --- a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateBundleTracker.java +++ b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateBundleTracker.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateBundleTrackerCustomizer.java b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateBundleTrackerCustomizer.java index 6b85125..a558b38 100644 --- a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateBundleTrackerCustomizer.java +++ b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateBundleTrackerCustomizer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -46,6 +46,7 @@ import com.google.gson.JsonParser; import ru.entaxy.base.generator.template.Template; import ru.entaxy.base.generator.template.TemplateImpl; import ru.entaxy.base.generator.template.TemplateService; +import ru.entaxy.platform.base.support.JSONUtils; public class TemplateBundleTrackerCustomizer implements BundleTrackerCustomizer { @@ -98,19 +99,12 @@ public class TemplateBundleTrackerCustomizer implements BundleTrackerCustomizer< if (metadataUrl != null) { // descriptor is found - - String metadata = new BufferedReader ( - new InputStreamReader( - metadataUrl.openStream(), StandardCharsets.UTF_8)) - .lines() - .collect(Collectors.joining("\n")); - + GsonBuilder builder = new GsonBuilder(); Gson gson = builder.create(); - - JsonElement je = (new JsonParser()).parse(metadata); - JsonObject root = je.getAsJsonObject(); - + + JsonObject root = JSONUtils.getJsonRootObject(metadataUrl); + JsonElement templatesElement = root.get("templates"); if (templatesElement == null) return null; @@ -129,6 +123,8 @@ public class TemplateBundleTrackerCustomizer implements BundleTrackerCustomizer< log.debug("BEGIN :: Searching for templates in " + bundle.getBundleId()); Enumeration foundEntries = bundle.findEntries(TemplateProvider.TEMPLATE_PATH, "*.*", true); + if (foundEntries == null) + return null; while (foundEntries.hasMoreElements()) { URL entry = foundEntries.nextElement(); log.debug("FOUND :: " + entry.toString()); diff --git a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateMetadata.java b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateMetadata.java index a11453f..1980a46 100644 --- a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateMetadata.java +++ b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateMetadata.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateProvider.java b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateProvider.java index 370c6a3..4db4f75 100644 --- a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateProvider.java +++ b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateProvider.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateServiceImpl.java b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateServiceImpl.java index 08a9496..1a97443 100644 --- a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateServiceImpl.java +++ b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/base/generator/template/impl/TemplateServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/AbstractSelfPublishGenerator.java b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/AbstractSelfPublishGenerator.java index 4e6c031..6bdc49a 100644 --- a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/AbstractSelfPublishGenerator.java +++ b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/AbstractSelfPublishGenerator.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/Generated.java b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/Generated.java index c78b5c9..1209dc1 100644 --- a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/Generated.java +++ b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/Generated.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/Generator.java b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/Generator.java index 987c6da..9645fb6 100644 --- a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/Generator.java +++ b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/Generator.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/GeneratorService.java b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/GeneratorService.java index 9605fda..676c7d4 100644 --- a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/GeneratorService.java +++ b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/GeneratorService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/impl/GeneratedImpl.java b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/impl/GeneratedImpl.java index 53536fe..b448f4b 100644 --- a/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/impl/GeneratedImpl.java +++ b/platform/runtime/base/connecting/generator/generator-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/impl/GeneratedImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/generator-factory/pom.xml b/platform/runtime/base/connecting/generator/generator-factory/pom.xml index f0a0fb3..a593e71 100644 --- a/platform/runtime/base/connecting/generator/generator-factory/pom.xml +++ b/platform/runtime/base/connecting/generator/generator-factory/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.base.connecting generator - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/base/connecting/generator/generator-factory/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/factory/GeneratorFactory.java b/platform/runtime/base/connecting/generator/generator-factory/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/factory/GeneratorFactory.java index 4f77acb..0e34b29 100644 --- a/platform/runtime/base/connecting/generator/generator-factory/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/factory/GeneratorFactory.java +++ b/platform/runtime/base/connecting/generator/generator-factory/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/generator/factory/GeneratorFactory.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * generator-factory * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/pom.xml b/platform/runtime/base/connecting/generator/pom.xml index ffed106..768ebb0 100644 --- a/platform/runtime/base/connecting/generator/pom.xml +++ b/platform/runtime/base/connecting/generator/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.base connecting - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/base/connecting/generator/template-service-shell/pom.xml b/platform/runtime/base/connecting/generator/template-service-shell/pom.xml index 8e3c2d9..6cb218a 100644 --- a/platform/runtime/base/connecting/generator/template-service-shell/pom.xml +++ b/platform/runtime/base/connecting/generator/template-service-shell/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime.base.connecting generator - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.base.connecting.generator template-service-shell diff --git a/platform/runtime/base/connecting/generator/template-service-shell/src/main/java/ru/entaxy/base/generator/template/shell/Generate.java b/platform/runtime/base/connecting/generator/template-service-shell/src/main/java/ru/entaxy/base/generator/template/shell/Generate.java index 99592df..4e82ae2 100644 --- a/platform/runtime/base/connecting/generator/template-service-shell/src/main/java/ru/entaxy/base/generator/template/shell/Generate.java +++ b/platform/runtime/base/connecting/generator/template-service-shell/src/main/java/ru/entaxy/base/generator/template/shell/Generate.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * template-service-test * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/template-service-shell/src/main/java/ru/entaxy/base/generator/template/shell/ListTemplates.java b/platform/runtime/base/connecting/generator/template-service-shell/src/main/java/ru/entaxy/base/generator/template/shell/ListTemplates.java index 873a450..67afa9b 100644 --- a/platform/runtime/base/connecting/generator/template-service-shell/src/main/java/ru/entaxy/base/generator/template/shell/ListTemplates.java +++ b/platform/runtime/base/connecting/generator/template-service-shell/src/main/java/ru/entaxy/base/generator/template/shell/ListTemplates.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * template-service-test * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/generator/template-service-shell/src/main/java/ru/entaxy/base/generator/template/shell/TemplateServiceSupport.java b/platform/runtime/base/connecting/generator/template-service-shell/src/main/java/ru/entaxy/base/generator/template/shell/TemplateServiceSupport.java index bdb3614..7dfebcf 100644 --- a/platform/runtime/base/connecting/generator/template-service-shell/src/main/java/ru/entaxy/base/generator/template/shell/TemplateServiceSupport.java +++ b/platform/runtime/base/connecting/generator/template-service-shell/src/main/java/ru/entaxy/base/generator/template/shell/TemplateServiceSupport.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * template-service-test * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/pom.xml b/platform/runtime/base/connecting/pom.xml index 15723c1..de2a0a0 100644 --- a/platform/runtime/base/connecting/pom.xml +++ b/platform/runtime/base/connecting/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime base - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/base/connecting/producer/connection-producer/pom.xml b/platform/runtime/base/connecting/producer/connection-producer/pom.xml index 2591613..e6d7bb3 100644 --- a/platform/runtime/base/connecting/producer/connection-producer/pom.xml +++ b/platform/runtime/base/connecting/producer/connection-producer/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.base.connecting producer - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/base/connecting/producer/connection-producer/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/producer/connection/ConnectionProducer.java b/platform/runtime/base/connecting/producer/connection-producer/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/producer/connection/ConnectionProducer.java index 4b9d2c7..fd6e122 100644 --- a/platform/runtime/base/connecting/producer/connection-producer/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/producer/connection/ConnectionProducer.java +++ b/platform/runtime/base/connecting/producer/connection-producer/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/producer/connection/ConnectionProducer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connection-producer * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/producer/connection-producer/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/producer/connection/util/ConnectionProducerUtil.java b/platform/runtime/base/connecting/producer/connection-producer/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/producer/connection/util/ConnectionProducerUtil.java index 16b582d..0b487d3 100644 --- a/platform/runtime/base/connecting/producer/connection-producer/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/producer/connection/util/ConnectionProducerUtil.java +++ b/platform/runtime/base/connecting/producer/connection-producer/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/producer/connection/util/ConnectionProducerUtil.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connection-producer * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/connecting/producer/pom.xml b/platform/runtime/base/connecting/producer/pom.xml index 7559602..d8ee3f1 100644 --- a/platform/runtime/base/connecting/producer/pom.xml +++ b/platform/runtime/base/connecting/producer/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.base connecting - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/base/connecting/producer/producer-api/pom.xml b/platform/runtime/base/connecting/producer/producer-api/pom.xml index f7f706d..1926e21 100644 --- a/platform/runtime/base/connecting/producer/producer-api/pom.xml +++ b/platform/runtime/base/connecting/producer/producer-api/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.base.connecting producer - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/base/connecting/producer/producer-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/producer/Producer.java b/platform/runtime/base/connecting/producer/producer-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/producer/Producer.java index 10aad37..c746ab8 100644 --- a/platform/runtime/base/connecting/producer/producer-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/producer/Producer.java +++ b/platform/runtime/base/connecting/producer/producer-api/src/main/java/ru/entaxy/esb/platform/runtime/base/connecting/producer/Producer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * producer-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/pom.xml b/platform/runtime/base/management-core/pom.xml index e16a290..598a321 100644 --- a/platform/runtime/base/management-core/pom.xml +++ b/platform/runtime/base/management-core/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime base - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.base management-core diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/ManagementCore.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/ManagementCore.java index f3bbed9..a0f0b6a 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/ManagementCore.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/ManagementCore.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * management-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/Qualifier.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/Qualifier.java index 922fbbb..c9758e0 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/Qualifier.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/Qualifier.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * management-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/AnnotatedMBean.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/AnnotatedMBean.java index 89dc907..7a4361a 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/AnnotatedMBean.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/AnnotatedMBean.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * management-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/Attribute.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/Attribute.java index 376368d..bc70997 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/Attribute.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/Attribute.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * management-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/EntaxyRuntimeTyped.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/EntaxyRuntimeTyped.java index 935f20d..979fdba 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/EntaxyRuntimeTyped.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/EntaxyRuntimeTyped.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * management-core * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/MBeanAnnotated.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/MBeanAnnotated.java index 1f1628a..6687d9d 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/MBeanAnnotated.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/MBeanAnnotated.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * management-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/MBeanExportPolicy.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/MBeanExportPolicy.java index 618427a..289c1d3 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/MBeanExportPolicy.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/MBeanExportPolicy.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * management-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/NotExported.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/NotExported.java index 4a705ab..a2a1525 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/NotExported.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/NotExported.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * management-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/Operation.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/Operation.java index ec2bcaf..c50041e 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/Operation.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/Operation.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * management-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/Parameter.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/Parameter.java index d339177..400e0d3 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/Parameter.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/Parameter.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * management-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/RuntimeTypedMBean.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/RuntimeTypedMBean.java index 7418068..3916e4a 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/RuntimeTypedMBean.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/api/RuntimeTypedMBean.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * management-core * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/AttributeChangeTracker.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/AttributeChangeTracker.java index 36bf574..e2e257e 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/AttributeChangeTracker.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/AttributeChangeTracker.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/BundleAwareMBean.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/BundleAwareMBean.java index c391ed2..dd0d44d 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/BundleAwareMBean.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/BundleAwareMBean.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/BundleAwareMBeanImpl.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/BundleAwareMBeanImpl.java index 17fe442..73668ba 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/BundleAwareMBeanImpl.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/BundleAwareMBeanImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/BundleAwareManagedObject.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/BundleAwareManagedObject.java index 29d9e5c..3e68aa1 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/BundleAwareManagedObject.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/BundleAwareManagedObject.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/BundleAwareManagedObjectImpl.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/BundleAwareManagedObjectImpl.java index a68cf11..9b07c8a 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/BundleAwareManagedObjectImpl.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/BundleAwareManagedObjectImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/ExtendedBundleTrackerCustomizer.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/ExtendedBundleTrackerCustomizer.java index 2e4cb4d..34da2c4 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/ExtendedBundleTrackerCustomizer.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/ExtendedBundleTrackerCustomizer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/MBeanInfoHelper.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/MBeanInfoHelper.java index 10be24b..3e42058 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/MBeanInfoHelper.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/MBeanInfoHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * management-core * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/ManagedObjectDescriptor.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/ManagedObjectDescriptor.java index bb432ea..4c9502f 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/ManagedObjectDescriptor.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/ManagedObjectDescriptor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/ManagedObjectsListener.java b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/ManagedObjectsListener.java index 916e3d4..d317b2c 100644 --- a/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/ManagedObjectsListener.java +++ b/platform/runtime/base/management-core/src/main/java/ru/entaxy/esb/platform/base/management/core/utils/ManagedObjectsListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,6 +31,15 @@ import org.slf4j.LoggerFactory; import ru.entaxy.esb.platform.base.management.core.ManagementCore; import ru.entaxy.platform.base.support.osgi.tracker.BundleTrackerCustomizerListener; +/** + * + * @author sstarovoytenkov + * + * @param type of iterable managed objects collection, e.g. List + * @param type of item in the collection above, e.g. ManagedProfile + * @param interface of the service to register, e.g. ProfileMBean + * @param class implementing the interface above, e.g. ProfileMBeanImpl + */ public abstract class ManagedObjectsListener implements BundleTrackerCustomizerListener { private static final Logger log = LoggerFactory.getLogger(ManagedObjectsListener.class); @@ -88,7 +97,7 @@ public abstract class ManagedObjectsListener implements Bu @Override public void modified(T managedObject) { - log.info(">> modified"); + log.debug(">> modified"); Iterator iter = getIterator(managedObject); while (iter.hasNext()) { S object = iter.next(); @@ -97,9 +106,9 @@ public abstract class ManagedObjectsListener implements Bu C service = managed.get(key).service; if (service instanceof BundleAwareMBean) { ((BundleAwareMBean)service).refreshBundleInfo(); - log.info(">> refreshBundleInfo"); + log.debug(">> refreshBundleInfo"); } else { - log.info(">> NOT BundleAwareMBean"); + log.debug(">> NOT BundleAwareMBean"); } } } diff --git a/platform/runtime/base/objects-base/object-factory/pom.xml b/platform/runtime/base/objects-base/object-factory/pom.xml index 475edd3..5da8c49 100644 --- a/platform/runtime/base/objects-base/object-factory/pom.xml +++ b/platform/runtime/base/objects-base/object-factory/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime.base objects-base - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.base.objects-base object-factory @@ -15,6 +15,7 @@ ru.entaxy.platform.base.objects.factory, ru.entaxy.platform.base.objects.factory.configuration, + ru.entaxy.platform.base.objects.factory.exceptions, ru.entaxy.platform.base.objects.factory.impl, ru.entaxy.platform.base.objects.factory.tracker @@ -53,4 +54,22 @@ ${project.version} + + + + + org.apache.felix + maven-bundle-plugin + ${maven-bundle-plugin.version} + true + + + true + + + + + + + \ No newline at end of file diff --git a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/EntaxyFactory.java b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/EntaxyFactory.java index 1429ec7..04d3555 100644 --- a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/EntaxyFactory.java +++ b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/EntaxyFactory.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -52,10 +52,16 @@ public interface EntaxyFactory extends EntaxyFactoryElements.EntaxyFactoryExtend String ID = "id"; String TYPE = "type"; + String DISPLAY_NAME = "displayName"; String DESCRIPTION = "description"; String LABEL = "label"; String CATEGORY = "category"; + String PARENT = "parent"; + String REQUIRES = "requires"; + + String IS_ABSTRACT = "isAbstract"; + String IS_DEPRECATED = "isDeprecated"; } public static interface FIELDS { @@ -88,6 +94,8 @@ public interface EntaxyFactory extends EntaxyFactoryElements.EntaxyFactoryExtend String IS_REF = "isRef"; + String ADD_TO_OUTPUT = "addToOutput"; + } String OBJECT_ID = "objectId"; @@ -110,8 +118,78 @@ public interface EntaxyFactory extends EntaxyFactoryElements.EntaxyFactoryExtend } } + public static interface DIRECTIVES { + + String OVERRIDE = "@OVERRIDE"; + String IMPORT = "@IMPORT"; + String VARIANTS = "@VARIANTS"; + String CALCULATED = "@CALCULATED"; + String SCOPED = "@SCOPED"; + String INTERNAL = "@INTERNAL"; + + static Set getAllDirectives(){ + return new HashSet() { + + private static final long serialVersionUID = 1L; + + { + add(OVERRIDE); + add(IMPORT); + add(VARIANTS); + }}; + } + + public static enum OVERRIDE_MODE { + + // leave parent value, no changes made + // parent value is 'final' + IGNORE("ignore"), + + // child value is used + // parent value is ignored + REPLACE("replace"), + + // use parent value + // with addition of new elements from child + APPEND("append"), + + // use parent value updated from child + // with addition of new elements from child + UPDATE("update"); + + public String label; + + private OVERRIDE_MODE(String label) { + this.label = label; + } + + public static OVERRIDE_MODE valueOfLabel(String label) { + for (OVERRIDE_MODE e : values()) { + if (e.label.equalsIgnoreCase(label)) { + return e; + } + } + return null; + } + + } + + + } + } + public static interface GENERATION { + + public static interface ATTRIBUTES { + + String OUTPUT = "generation.output"; + String SCOPE = "generation.scope"; + String FACTORY = "generation.factory"; + + } + + } static public enum SCOPE { PUBLIC("public"), @@ -192,6 +270,10 @@ public interface EntaxyFactory extends EntaxyFactoryElements.EntaxyFactoryExtend return getType(); }; + public boolean isAbstract(); + public boolean isDeprecated(); + + public String getParent(); public List getOutputs(); public OutputInfo getDefaultOutput(); @@ -199,6 +281,10 @@ public interface EntaxyFactory extends EntaxyFactoryElements.EntaxyFactoryExtend public List getFields(); public List getFields(String outputType); + + public Map getTypeInfo(); + + public String getJsonConfiguration(); public Generated generate(Map parameters) throws EntaxyFactoryException ; public Generated generate(String outputType, Map parameters) throws EntaxyFactoryException; diff --git a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/EntaxyFactoryElements.java b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/EntaxyFactoryElements.java index bcfff33..a73b16b 100644 --- a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/EntaxyFactoryElements.java +++ b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/EntaxyFactoryElements.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-factory * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,11 +31,25 @@ public interface EntaxyFactoryElements { String getLabel(); + default boolean hasLabel(String label) { + if ((label==null) || (label.trim().length() == 0) ) + return false; + if (getLabel() == null) + return false; + String test = label.trim(); + String[] labels = getLabel().split(","); + for (int i=0; i { protected String id; protected String type; + protected String displayName; protected String description; protected String label; protected String category; + protected String parent; + protected boolean isAbstract = false; + protected boolean isDeprecated = false; + public String getId() { return id; } @@ -61,5 +66,29 @@ public class FactoryElement extends AbstractElement { public void setCategory(String category) { this.category = category; } + public String getParent() { + return parent; + } + public void setParent(String parent) { + this.parent = parent; + } + public boolean isAbstract() { + return isAbstract; + } + public void setAbstract(boolean isAbstract) { + this.isAbstract = isAbstract; + } + public String getDisplayName() { + return displayName; + } + public void setDisplayName(String displayName) { + this.displayName = displayName; + } + public boolean isDeprecated() { + return isDeprecated; + } + public void setDeprecated(boolean isDeprecated) { + this.isDeprecated = isDeprecated; + } } diff --git a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/configuration/FieldElement.java b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/configuration/FieldElement.java index 7bb051d..294b9d6 100644 --- a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/configuration/FieldElement.java +++ b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/configuration/FieldElement.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -24,6 +24,8 @@ import com.google.gson.JsonElement; import com.google.gson.JsonObject; import ru.entaxy.platform.base.objects.factory.EntaxyFactory; +import ru.entaxy.platform.base.objects.factory.EntaxyFactory.CONFIGURATION.FIELDS; +import ru.entaxy.platform.base.support.CommonUtils; import ru.entaxy.platform.base.support.JSONUtils; public class FieldElement implements EntaxyFactory.FieldInfo { @@ -39,11 +41,30 @@ public class FieldElement implements EntaxyFactory.FieldInfo { boolean required = false; Object defaultValue = ""; - boolean conditional = false; + /*boolean conditional = false;*/ String condition = null; boolean isRef = false; + public static FieldElement fromJson(String name, JsonElement element) { + Class feClass = FieldElement.class; + + if (element.isJsonObject()) + if (element.getAsJsonObject().has(FIELDS.ATTRIBUTES.IS_REF)) { + JsonElement val = element.getAsJsonObject().get(FIELDS.ATTRIBUTES.IS_REF); + if (val.isJsonPrimitive() && val.getAsJsonPrimitive().isBoolean()) + if (val.getAsJsonPrimitive().getAsBoolean()) { + feClass = RefFieldElement.class; + } + } + + FieldElement fe = (new Gson()).fromJson(element, feClass); + fe.setName(name); + fe.setJsonOrigin(element.isJsonObject()?element.getAsJsonObject():new JsonObject()); + + return fe; + } + public static FieldElement merge(FieldElement...elements) { JsonObject result = new JsonObject(); @@ -58,7 +79,7 @@ public class FieldElement implements EntaxyFactory.FieldInfo { JSONUtils.mergeObjects(jsonObject, result); } - FieldElement fe = (new Gson()).fromJson(result, FieldElement.class); + FieldElement fe = FieldElement.fromJson("merged", result); fe.setJsonOrigin(result.deepCopy()); return fe; } @@ -107,7 +128,7 @@ public class FieldElement implements EntaxyFactory.FieldInfo { @Override public boolean isConditional() { - return conditional; + return CommonUtils.isValid(this.condition); } @Override @@ -153,9 +174,9 @@ public class FieldElement implements EntaxyFactory.FieldInfo { this.jsonOrigin = jsonOrigin; } - public void setConditional(boolean conditional) { +/* public void setConditional(boolean conditional) { this.conditional = conditional; - } + } */ public void setCondition(String condition) { this.condition = condition; diff --git a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/configuration/FieldsElement.java b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/configuration/FieldsElement.java index db49ec9..e341f17 100644 --- a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/configuration/FieldsElement.java +++ b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/configuration/FieldsElement.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,7 +20,7 @@ package ru.entaxy.platform.base.objects.factory.configuration; import java.util.ArrayList; -import java.util.HashMap; +import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Map.Entry; @@ -41,7 +41,7 @@ public class FieldsElement extends AbstractElement { public static final String ELEMENT_NAME = EntaxyFactory.CONFIGURATION.FIELDS_SECTION_NAME; - protected Map fields = new HashMap<>(); + protected Map fields = new LinkedHashMap<>(); @Override public FieldsElement fromJson(JsonElement jsonElement) { diff --git a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/configuration/OutputElement.java b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/configuration/OutputElement.java index 0d27925..015f4c9 100644 --- a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/configuration/OutputElement.java +++ b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/configuration/OutputElement.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -24,6 +24,7 @@ import java.util.Arrays; import java.util.Collections; import java.util.HashMap; import java.util.HashSet; +import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Map.Entry; @@ -60,9 +61,9 @@ public class OutputElement implements EntaxyFactory.OutputInfo { protected FieldsElement fields = null; - protected Map commonFields = new HashMap<>(); + protected Map commonFields = new LinkedHashMap<>(); - protected Map effectiveFields = new HashMap<>(); + protected Map effectiveFields = new LinkedHashMap<>(); protected boolean isEffectiveCalculated = false; @@ -122,6 +123,8 @@ public class OutputElement implements EntaxyFactory.OutputInfo { } else { // use only locally mentioned fields + // except common fields with "addToOutput" set to current output type or "*" + ownedFields = fields.getFieldsMap(); log.debug("->" + getType() + " ownedFields: " + fields.getFieldsMap().size()); @@ -131,6 +134,23 @@ public class OutputElement implements EntaxyFactory.OutputInfo { FieldElement fe = FieldElement.merge(entry.getValue(), ownedFields.get(entry.getKey())); fe.setName(entry.getKey()); this.effectiveFields.put(entry.getKey(), fe); + } else { + if (entry.getValue().getJsonOrigin().has(EntaxyFactory.CONFIGURATION.FIELDS.ATTRIBUTES.ADD_TO_OUTPUT)) { + String value = entry.getValue().getJsonOrigin() + .get(EntaxyFactory.CONFIGURATION.FIELDS.ATTRIBUTES.ADD_TO_OUTPUT) + .getAsString(); + String[] values = value.split(","); + boolean addField = false; + for (int i=0; i> elementSet = root.entrySet(); for (Entry entry: elementSet) { @@ -132,7 +147,11 @@ public class DefaultFactory implements EntaxyFactory { this.factoryType = fe.getType(); this.category = fe.getCategory(); this.label = fe.getLabel(); + this.displayName = fe.getDisplayName(); this.description = fe.getDescription(); + this.parent = fe.getParent(); + this.isAbstract = fe.isAbstract(); + this.isDeprecated = fe.isDeprecated(); } else if (object instanceof OutputsElement) { log.debug("POSTPROCESS :: OutputsElement"); this.outputs = (OutputsElement)object; @@ -175,6 +194,11 @@ public class DefaultFactory implements EntaxyFactory { return this.factoryType; } + @Override + public String getDisplayName() { + return displayName; + } + @Override public String getDescription() { return description; @@ -190,6 +214,34 @@ public class DefaultFactory implements EntaxyFactory { return category; } + @Override + public String getParent() { + return parent; + } + + @Override + public boolean isAbstract() { + return isAbstract; + } + + @Override + public boolean isDeprecated() { + return isDeprecated; + } + + @Override + public Map getTypeInfo() { + if (factoryData.containsKey(getType())) + return (Map)factoryData.get(getType()); + return Collections.emptyMap(); + } + + @Override + public String getJsonConfiguration() { + //JsonElement je = (new Gson()).toJsonTree(this.factoryData); + return EntaxyFactoryUtils.getEffectiveJson(this); + } + @Override public Generated generate(Map parameters) throws EntaxyFactoryException { return generate(this.outputs.getDefaultOutputType(), parameters); @@ -207,13 +259,15 @@ public class DefaultFactory implements EntaxyFactory { log.debug("Generating for: output type [{}], scope [{}]", outputType, scope); if (!this.outputs.hasOutput(outputType)) { - log.debug("Unknown output: {}", outputType); + log.debug("Factory: {}. Unknown output: {}", this.getId(), outputType); throw new EntaxyFactoryException(); } OutputElement oe = this.outputs.getOutput(outputType); if (!oe.isScopeSupported(scope)) { - log.error("Scope not supported: {}; supported scopes: [{}]" + log.error("Factory: {}, output: {}. Scope not supported: {}; supported scopes: [{}]" + , this.getId() + , oe.getType() , scope , oe.getSupportedScopes().stream().map(s -> s.label).collect(Collectors.joining(","))); throw new EntaxyFactoryException(); diff --git a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/impl/GenerationHelper.java b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/impl/GenerationHelper.java index 71aead1..7e382de 100644 --- a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/impl/GenerationHelper.java +++ b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/impl/GenerationHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,6 +19,7 @@ */ package ru.entaxy.platform.base.objects.factory.impl; +import java.util.HashMap; import java.util.LinkedList; import java.util.List; import java.util.Map; @@ -41,6 +42,7 @@ import ru.entaxy.esb.platform.runtime.base.connecting.generator.factory.Generato import ru.entaxy.platform.base.objects.factory.EntaxyFactory; import ru.entaxy.platform.base.objects.factory.EntaxyFactory.OutputInfo; import ru.entaxy.platform.base.objects.factory.EntaxyFactory.SCOPE; +import ru.entaxy.platform.base.support.CommonUtils; @Component(immediate = true, service = {GenerationHelper.class}) public class GenerationHelper { @@ -50,10 +52,13 @@ public class GenerationHelper { @Reference(cardinality = ReferenceCardinality.MANDATORY, collectionType = CollectionType.SERVICE, policy = ReferencePolicy.DYNAMIC, policyOption = ReferencePolicyOption.GREEDY) protected volatile TemplateService templateService; + @Reference(cardinality = ReferenceCardinality.MANDATORY) + FactoryRegistry factoryRegistry; + public Generated generateForFactory(EntaxyFactory factory, String outputType, SCOPE scope, Map parameters) throws Exception { - log.debug("GENERATING for factory [" + factory.getFactoryId() + "]"); - log.debug("GENERATING for factory [" + factory.getFactoryId() + "] :: PARAMETERS \n" + log.debug("GENERATING for factory [" + factory.getId() + "]"); + log.debug("GENERATING for factory [" + factory.getId() + "] :: PARAMETERS \n" + parameters.entrySet().stream().map(e -> e.getKey() + ":" + (null==e.getValue()?"null":e.getValue())) .collect(Collectors.toList()) .stream().collect(Collectors.joining(", ")) @@ -63,39 +68,63 @@ public class GenerationHelper { if (outputInfo == null) { // @TODO throw Exception - log.debug("GENERATING for factory [" + factory.getFactoryId() + "] :: output [{}] not found", outputType); + log.debug("GENERATING for factory [" + factory.getId() + "] :: output [{}] not found", outputType); return null; } if (!outputInfo.getScopes().contains(scope.label)) { // @TODO throw Exception - log.debug("GENERATING for factory [" + factory.getFactoryId() + "] :: scope [{}] not supported", scope.label); + log.debug("GENERATING for factory [" + factory.getId() + "] :: scope [{}] not supported", scope.label); return null; } + Map generationProperties = new HashMap<>(); + generationProperties.put(EntaxyFactory.GENERATION.ATTRIBUTES.OUTPUT, outputType); + generationProperties.put(EntaxyFactory.GENERATION.ATTRIBUTES.SCOPE, scope.label); + generationProperties.put(EntaxyFactory.GENERATION.ATTRIBUTES.FACTORY, factory.getId()); + // try to generate via GeneratorFactory - log.debug("GENERATING for factory [" + factory.getFactoryId() + "] :: TRY via GeneratorFactory"); - Generator g = GeneratorFactory.createGenerator(outputInfo.getGenerator(), outputInfo.getConfig()); - if (g.isGeneratable(parameters)) { - log.debug("GENERATING for factory [" + factory.getFactoryId() + "] :: generating"); - return g.generate(parameters); + log.debug("GENERATING for factory [" + factory.getId() + "] :: TRY via GeneratorFactory"); + + Map generatorProperties = new HashMap<>(outputInfo.getConfig()); + generatorProperties.putAll(generationProperties); + Generator g = GeneratorFactory.createGenerator(outputInfo.getGenerator(), generatorProperties); + + Map generationParameters = new HashMap<>(parameters); + generationParameters.putAll(generationProperties); + + if (g.isGeneratable(generationParameters)) { + log.debug("GENERATING for factory [" + factory.getId() + "] :: generating"); + return g.generate(generationParameters); } else { - log.debug("GENERATING for factory [" + factory.getFactoryId() + "] :: NOT generatable"); + log.debug("GENERATING for factory [" + factory.getId() + "] :: NOT generatable"); } // try to generate via TemplateService - log.debug("GENERATING for factory [" + factory.getFactoryId() + "] :: TRY via TemplateService"); + log.debug("GENERATING for factory [" + factory.getId() + "] :: TRY via TemplateService"); List candidates = new LinkedList<>(); - candidates.add(factory.getFactoryId() + "." + outputType + "." + scope.label); - candidates.add(factory.getFactoryId() + "." + outputType); + candidates.add(factory.getId() + "." + outputType + "." + scope.label); + candidates.add(factory.getId() + "." + outputType); if (outputInfo.isDefault()) { - candidates.add(factory.getFactoryId() + ".default." + scope.label); - candidates.add(factory.getFactoryId() + ".default"); - candidates.add(factory.getFactoryId() + "." + scope.label); - candidates.add(factory.getFactoryId()); + candidates.add(factory.getId() + ".default." + scope.label); + candidates.add(factory.getId() + ".default"); + candidates.add(factory.getId() + "." + scope.label); + candidates.add(factory.getId()); + } + String parent = factory.getParent(); + while (CommonUtils.isValid(parent)) { + candidates.add(parent + "." + outputType + "." + scope.label); + candidates.add(parent + "." + outputType); + String newParent = factoryRegistry.getParentFactory(parent); + + // exclude cyclic references + if (parent.equalsIgnoreCase(newParent)) + break; + + parent = newParent; } - log.debug("GENERATING for factory [" + factory.getFactoryId() + "] :: CANDIDATES : [" + log.debug("GENERATING for factory [" + factory.getId() + "] :: CANDIDATES : [" + candidates.stream().collect(Collectors.joining(";")) + "]" ); @@ -103,12 +132,12 @@ public class GenerationHelper { for (String candidate: candidates) { Template t = templateService.getTemplateById(candidate); if (t != null) { - log.debug("GENERATING for factory [" + factory.getFactoryId() + "] :: FOUND TEMPLATE : [" + log.debug("GENERATING for factory [" + factory.getId() + "] :: FOUND TEMPLATE : [" + candidate + "]"); Generated result = GeneratorFactory.createGenerator(t).generate(t, parameters); return result; } else { - log.debug("GENERATING for factory [" + factory.getFactoryId() + "] :: NOT FOUND TEMPLATE : [" + log.debug("GENERATING for factory [" + factory.getId() + "] :: NOT FOUND TEMPLATE : [" + candidate + "]"); } } diff --git a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/tracker/TrackedFactory.java b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/tracker/TrackedFactory.java index edcfffe..af353f6 100644 --- a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/tracker/TrackedFactory.java +++ b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/tracker/TrackedFactory.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -27,7 +27,10 @@ import org.osgi.framework.ServiceRegistration; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import com.google.gson.JsonObject; + import ru.entaxy.platform.base.objects.factory.EntaxyFactory; +import ru.entaxy.platform.base.support.CommonUtils; public class TrackedFactory { @@ -77,6 +80,11 @@ public class TrackedFactory { if (this.serviceRegistration != null) try { this.serviceRegistration.unregister(); + } catch (IllegalStateException e) { + // skip exception typical for bundle refreshing process + if (CommonUtils.isValid(e.getMessage()) && e.getMessage().contains("Service already unregistered")) + return; + log.warn("TrackedFactory [" + getId() + "]", e); } catch (Exception e) { log.warn("TrackedFactory [" + getId() + "]", e); } diff --git a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/tracker/TrackedFactoryCustomizer.java b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/tracker/TrackedFactoryCustomizer.java index e9853d3..b360e87 100644 --- a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/tracker/TrackedFactoryCustomizer.java +++ b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/tracker/TrackedFactoryCustomizer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -34,6 +34,7 @@ import org.osgi.framework.BundleEvent; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import ru.entaxy.platform.base.support.JSONUtils; import ru.entaxy.platform.base.support.osgi.tracker.UniformBundleTrackerCustomizer; public class TrackedFactoryCustomizer extends UniformBundleTrackerCustomizer> { @@ -60,11 +61,13 @@ public class TrackedFactoryCustomizer extends UniformBundleTrackerCustomizer> { diff --git a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/tracker/TrackerManager.java b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/tracker/TrackerManager.java index 19189bb..34e1fb7 100644 --- a/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/tracker/TrackerManager.java +++ b/platform/runtime/base/objects-base/object-factory/src/main/java/ru/entaxy/platform/base/objects/factory/tracker/TrackerManager.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -27,6 +27,8 @@ import org.osgi.service.component.ComponentContext; import org.osgi.service.component.annotations.Activate; import org.osgi.service.component.annotations.Component; import org.osgi.service.component.annotations.Deactivate; +import org.osgi.service.component.annotations.Reference; +import org.osgi.service.component.annotations.ReferenceCardinality; import org.osgi.util.tracker.BundleTracker; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -43,6 +45,9 @@ public class TrackerManager { protected BundleTracker> factoryTracker; + @Reference (cardinality = ReferenceCardinality.MANDATORY) + TrackedFactoryManager factoryManager; + @Activate public void activate(ComponentContext componentContext) { this.bundleContext = componentContext.getBundleContext(); @@ -54,7 +59,8 @@ public class TrackerManager { ) .customizer( (new TrackedFactoryCustomizer()) - .listener(new TrackedFactoryCustomizerListener(bundleContext)) + // .listener(new TrackedFactoryCustomizerListener(bundleContext)) + .listener(factoryManager) ) .bundleState(Bundle.ACTIVE | Bundle.INSTALLED | Bundle.RESOLVED) .get(); diff --git a/platform/runtime/base/objects-base/objects-core/pom.xml b/platform/runtime/base/objects-base/objects-core/pom.xml index 3cf4ae6..0926de2 100644 --- a/platform/runtime/base/objects-base/objects-core/pom.xml +++ b/platform/runtime/base/objects-base/objects-core/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime.base objects-base - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.base.objects-base objects-core diff --git a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/EntaxyObject.java b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/EntaxyObject.java index 18c7d0a..4e35635 100644 --- a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/EntaxyObject.java +++ b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/EntaxyObject.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -23,6 +23,7 @@ public interface EntaxyObject { public interface HEADERS { + String ENTAXY_GENERATED = "Entaxy-Generated"; String MAIN_OBJECT = "Entaxy-Main-Object"; String GENERATED_OBJECTS = "Entaxy-Generated-Object"; // public static final String HEADER_MAIN_OBJECT_ID = "Entaxy-Main-Object-Id"; @@ -73,11 +74,22 @@ public interface EntaxyObject { public long getBundleId(); } - public String getObjectId(); - public String getObjectType(); - public default String getObjectFullId() { - return getObjectId() + ":" + getObjectType(); + public String getId(); + public String getType(); + @Deprecated + public default String getObjectId() { + return getId(); }; + @Deprecated + public default String getObjectType() { + return getType(); + }; + + public default String getObjectFullId() { + return getId() + ":" + getType(); + }; + + public String getScope(); public String getFactoryId(); public BundleInfo getBundleInfo(); diff --git a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/EntaxyObjectService.java b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/EntaxyObjectService.java index 1c660e8..d40e7e7 100644 --- a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/EntaxyObjectService.java +++ b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/EntaxyObjectService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -24,5 +24,7 @@ import java.util.List; public interface EntaxyObjectService { public List getObjects(); - + + public EntaxyObject findObject(String objectId, String objectType); + } diff --git a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/EntaxyObjectStorage.java b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/EntaxyObjectStorage.java index d510b9d..126655a 100644 --- a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/EntaxyObjectStorage.java +++ b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/EntaxyObjectStorage.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/EntaxyObjectStorageService.java b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/EntaxyObjectStorageService.java index 2d26546..099eb43 100644 --- a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/EntaxyObjectStorageService.java +++ b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/EntaxyObjectStorageService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/impl/BundleInfoImpl.java b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/impl/BundleInfoImpl.java index 0ead595..a654d07 100644 --- a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/impl/BundleInfoImpl.java +++ b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/impl/BundleInfoImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/impl/EntaxyObjectServiceImpl.java b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/impl/EntaxyObjectServiceImpl.java index 8095740..d9c7470 100644 --- a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/impl/EntaxyObjectServiceImpl.java +++ b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/impl/EntaxyObjectServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,6 +22,7 @@ package ru.entaxy.platform.base.objects.service.impl; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Optional; import java.util.stream.Collectors; import org.osgi.framework.Bundle; @@ -69,6 +70,14 @@ public class EntaxyObjectServiceImpl implements EntaxyObjectService { return trackedObjects.values().stream().collect(Collectors.toList()); } + @Override + public EntaxyObject findObject(String objectId, String objectType) { + Optional object = getObjects().stream() + .filter(obj -> (obj.getObjectId().equals(objectId) && obj.getObjectType().equals(objectType))) + .findFirst(); + return object.orElse(null); + } + protected void openTracker() { objectTracker = BundleTrackerUtils.>createBuilder() .addFilter( diff --git a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/impl/TrackedEntaxyObject.java b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/impl/TrackedEntaxyObject.java index fb563ab..8d3c240 100644 --- a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/impl/TrackedEntaxyObject.java +++ b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/impl/TrackedEntaxyObject.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -32,11 +32,16 @@ public class TrackedEntaxyObject implements EntaxyObject { static public TrackedEntaxyObject create(BundleContext bundleContext, String objectId, String objectType) { return new TrackedEntaxyObject(bundleContext, objectId, objectType); } + + static public TrackedEntaxyObject create(BundleContext bundleContext, String objectId, String objectType, String scope) { + return new TrackedEntaxyObject(bundleContext, objectId, objectType, scope); + } protected BundleContext bundleContext; protected String objectId; protected String objectType; + protected String objectScope = "public"; protected String factoryId = "UNKNOWN"; protected JsonObject configuration; @@ -50,16 +55,26 @@ public class TrackedEntaxyObject implements EntaxyObject { this.objectType = objectType; } + protected TrackedEntaxyObject(BundleContext bundleContext, String objectId, String objectType, String scope) { + this(bundleContext, objectId, objectType); + this.objectScope = scope; + } + @Override - public String getObjectId() { + public String getId() { return this.objectId; } @Override - public String getObjectType() { + public String getType() { return this.objectType; } + @Override + public String getScope() { + return this.objectScope; + } + @Override public String getFactoryId() { return this.factoryId; diff --git a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/tracker/TrackedEntaxyObjectCustomizer.java b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/tracker/TrackedEntaxyObjectCustomizer.java index 7dc0016..0d932ec 100644 --- a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/tracker/TrackedEntaxyObjectCustomizer.java +++ b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/tracker/TrackedEntaxyObjectCustomizer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -65,9 +65,19 @@ public class TrackedEntaxyObjectCustomizer extends UniformBundleTrackerCustomize configuration = "{}"; } - TrackedEntaxyObject obj = TrackedEntaxyObject.create( - objectServiceImpl.getBundleContext(), objectData[0], objectData[1] - ).bundle(bundle).configuration(configuration); + TrackedEntaxyObject obj; + if (objectData.length>2) + obj = TrackedEntaxyObject.create( + objectServiceImpl.getBundleContext() + , objectData[0] + , objectData[1] + , objectData[2] + ); + else + obj = TrackedEntaxyObject.create( + objectServiceImpl.getBundleContext(), objectData[0], objectData[1] + ); + obj.bundle(bundle).configuration(configuration); result.add(obj); } diff --git a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/tracker/TrackedEntaxyObjectCustomizerListener.java b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/tracker/TrackedEntaxyObjectCustomizerListener.java index 2bd5120..a0e715b 100644 --- a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/tracker/TrackedEntaxyObjectCustomizerListener.java +++ b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/service/tracker/TrackedEntaxyObjectCustomizerListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/EntaxyObjectServiceSupport.java b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/EntaxyObjectServiceSupport.java index 8dc8f45..a3bbec1 100644 --- a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/EntaxyObjectServiceSupport.java +++ b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/EntaxyObjectServiceSupport.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/ListObjects.java b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/ListObjects.java index 50f8c21..1470689 100644 --- a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/ListObjects.java +++ b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/ListObjects.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -36,14 +36,16 @@ public class ListObjects extends EntaxyObjectServiceSupport implements Action { ShellTable shellTable = new ShellTable(); shellTable.column("Id"); shellTable.column("Type"); + shellTable.column("Scope"); shellTable.column("Full Id"); shellTable.column("Factory Id"); shellTable.column("Bundle Id"); for (EntaxyObject object: objectService.getObjects()) shellTable.addRow().addContent( - object.getObjectId(), - object.getObjectType(), + object.getId(), + object.getType(), + object.getScope(), object.getObjectFullId(), object.getFactoryId(), object.getBundleInfo().getBundleId() diff --git a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/ObjectAwareCommand.java b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/ObjectAwareCommand.java index bc3dbdc..a8cbdf1 100644 --- a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/ObjectAwareCommand.java +++ b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/ObjectAwareCommand.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/ObjectConfiguration.java b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/ObjectConfiguration.java index a88b909..a522815 100644 --- a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/ObjectConfiguration.java +++ b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/ObjectConfiguration.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/completers/ObjectCompleter.java b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/completers/ObjectCompleter.java index f1741bb..72e73e1 100644 --- a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/completers/ObjectCompleter.java +++ b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/shell/completers/ObjectCompleter.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/storage/impl/EntaxyObjectStorageServiceImpl.java b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/storage/impl/EntaxyObjectStorageServiceImpl.java index 8c22d58..2b6af72 100644 --- a/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/storage/impl/EntaxyObjectStorageServiceImpl.java +++ b/platform/runtime/base/objects-base/objects-core/src/main/java/ru/entaxy/platform/base/objects/storage/impl/EntaxyObjectStorageServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/base/objects-base/pom.xml b/platform/runtime/base/objects-base/pom.xml index eb0d01e..d29169c 100644 --- a/platform/runtime/base/objects-base/pom.xml +++ b/platform/runtime/base/objects-base/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime base - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.base objects-base diff --git a/platform/runtime/base/pom.xml b/platform/runtime/base/pom.xml index f2c9639..5938f0b 100644 --- a/platform/runtime/base/pom.xml +++ b/platform/runtime/base/pom.xml @@ -1,11 +1,9 @@ - + ru.entaxy.esb.platform runtime - 1.8.2.2 + 1.8.3 4.0.0 @@ -34,5 +32,6 @@ management-core objects-base config-extensions + resources \ No newline at end of file diff --git a/platform/runtime/base/src/main/features/features.xml b/platform/runtime/base/src/main/features/features.xml index 7e944dd..9832479 100644 --- a/platform/runtime/base/src/main/features/features.xml +++ b/platform/runtime/base/src/main/features/features.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ base ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -20,7 +20,7 @@ --> - @@ -28,17 +28,16 @@ mvn:org.apache.camel.karaf/apache-camel/${camel.version}/xml/features mvn:ru.entaxy.esb.underlying/entaxy-underlying-features/${project.version}/xml/features - - mvn:ru.entaxy.esb.system/system-parent/${project.version}/xml/features + mvn:ru.entaxy.esb.platform.runtime/base/${project.version}/xml/support - - mvn:org.freemarker/freemarker/${freemarker.version} - + + mvn:ru.entaxy.esb.system/system-parent/${project.version}/xml/basics entaxy-freemarker-support entaxy-legacy-system base-support + resources extensions entaxy-branding management-core @@ -52,16 +51,11 @@ - - mvn:ru.entaxy.esb.platform.runtime.base/base-support/${project.version} - - base-support mvn:ru.entaxy.esb.platform.runtime.base/config-extensions/${project.version} - mvn:ru.entaxy.esb.platform.runtime.base/management-core/${project.version} @@ -80,15 +74,6 @@ adapter - - base-support - mvn:ru.entaxy.esb.platform.runtime.base.connecting.generator/generator-api/${project.version} - mvn:ru.entaxy.esb.platform.runtime.base.connecting.generator/generator-factory/${project.version} - mvn:ru.entaxy.esb.platform.runtime.base.connecting.generator/template-service-shell/${project.version} - mvn:ru.entaxy.esb.platform.runtime.base.connecting.generator/ftl-generator/${project.version} - mvn:ru.entaxy.esb.platform.runtime.base.connecting.generator/common-templates-collection/${project.version} - - camel-gson mvn:ru.entaxy.esb.platform.runtime.base.connecting.producer/producer-api/${project.version} @@ -148,4 +133,4 @@ mvn:ru.entaxy.esb.platform.runtime.base.connecting.adapter/h2-adapter/${project.version} - \ No newline at end of file + diff --git a/platform/runtime/core/artifact-management/pom.xml b/platform/runtime/core/artifact-management/pom.xml index 4a13eb2..b9d29d9 100644 --- a/platform/runtime/core/artifact-management/pom.xml +++ b/platform/runtime/core/artifact-management/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime core - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core artifact-management @@ -118,7 +118,16 @@ org.apache.karaf.cellar.core ${cellar.version} + + commons-codec + commons-codec + + ru.entaxy.esb.system.commons system-commons ${project.version} diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/Artifact.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/Artifact.java index 5c260f8..8f51328 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/Artifact.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/Artifact.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/ArtifactCoordinates.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/ArtifactCoordinates.java index 21b245b..363831c 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/ArtifactCoordinates.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/ArtifactCoordinates.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/ArtifactManifest.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/ArtifactManifest.java index 4b7a27e..12a21d1 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/ArtifactManifest.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/ArtifactManifest.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/Artifacts.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/Artifacts.java index 127ba36..afb7000 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/Artifacts.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/Artifacts.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/Blueprint.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/Blueprint.java index f16b4b8..c35a4dc 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/Blueprint.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/Blueprint.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/BlueprintManifest.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/BlueprintManifest.java index 2be790b..ec0b772 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/BlueprintManifest.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/BlueprintManifest.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/DefaultArtifact.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/DefaultArtifact.java index 2c26969..13e5234 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/DefaultArtifact.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/DefaultArtifact.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,6 +29,8 @@ import java.util.List; import java.util.Map; import org.apache.camel.tooling.model.Strings; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import ru.entaxy.platform.core.artifact.annotation.ArtifactSupport; import ru.entaxy.platform.core.artifact.capabilities.CapabilityDescriptor; @@ -36,6 +38,8 @@ import ru.entaxy.platform.core.artifact.impl.CapabilityDescriptorImpl; public class DefaultArtifact implements Artifact { + private static final Logger log = LoggerFactory.getLogger(DefaultArtifact.class); + protected ArtifactCoordinates coordinates; protected ArtifactSupport artifactSupport = null; @@ -122,14 +126,11 @@ public class DefaultArtifact implements Artifact { @Override public void toFile(File destination) { if (this.content != null) { - try { - FileWriter writer = new FileWriter(destination); + try (FileWriter writer = new FileWriter(destination)) { writer.write(this.content.toString()); - writer.close(); } catch (IOException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } + log.error("Error writing to file", e); + } } } diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/DeployedArtifact.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/DeployedArtifact.java index 5ea366b..d8773d5 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/DeployedArtifact.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/DeployedArtifact.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/Manifested.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/Manifested.java index 58a0ef4..5316d4a 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/Manifested.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/Manifested.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/annotation/ArtifactSupport.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/annotation/ArtifactSupport.java index 4d8fbeb..c54bda0 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/annotation/ArtifactSupport.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/annotation/ArtifactSupport.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/capabilities/CapabilityDescriptor.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/capabilities/CapabilityDescriptor.java index fe6131c..4d0c9ac 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/capabilities/CapabilityDescriptor.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/capabilities/CapabilityDescriptor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/capabilities/CapabilityDescriptorImpl.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/capabilities/CapabilityDescriptorImpl.java index 4cbfd39..d8035c4 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/capabilities/CapabilityDescriptorImpl.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/capabilities/CapabilityDescriptorImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -54,6 +54,8 @@ public class CapabilityDescriptorImpl implements CapabilityDescriptor { return null; if (CapabilityDescriptor.ATTRIBUTE_TYPES.isList(type)) return CapabilityTypeHelper.getListAsString((List)value); + if (CapabilityDescriptor.ATTRIBUTE_TYPES.STRING.equals(type)) + return "\"" + value.toString() + "\""; return value.toString(); } @@ -72,7 +74,7 @@ public class CapabilityDescriptorImpl implements CapabilityDescriptor { return this.attributes.entrySet().stream() .map(entry-> entry.getKey() - + (!ATTRIBUTE_TYPES.STRING.equals(entry.getValue().type)?(":" + entry.getValue().type):"") + + /* (!ATTRIBUTE_TYPES.STRING.equals(entry.getValue().type)?(*/":" + entry.getValue().type/* ):"") */ + "=" + entry.getValue().getValueAsString()) .collect(Collectors.joining(";")); } diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/capabilities/CapabilityTypeHelper.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/capabilities/CapabilityTypeHelper.java index 414f226..908e1a1 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/capabilities/CapabilityTypeHelper.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/capabilities/CapabilityTypeHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/capabilities/ManifestCapabilityHelper.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/capabilities/ManifestCapabilityHelper.java index 0b95ed9..2ca51b3 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/capabilities/ManifestCapabilityHelper.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/capabilities/ManifestCapabilityHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/impl/CapabilityDescriptorImpl.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/impl/CapabilityDescriptorImpl.java index 43ffc40..496b5e2 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/impl/CapabilityDescriptorImpl.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/impl/CapabilityDescriptorImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/ArtifactInstaller.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/ArtifactInstaller.java index 1a87dd4..e6199ce 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/ArtifactInstaller.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/ArtifactInstaller.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/ClusterInstaller.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/ClusterInstaller.java index d7ca123..b22a0ce 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/ClusterInstaller.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/ClusterInstaller.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/CommonInstaller.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/CommonInstaller.java index 30a48f0..c702351 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/CommonInstaller.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/CommonInstaller.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/InstallationResult.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/InstallationResult.java index 01423a4..4ccb37d 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/InstallationResult.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/InstallationResult.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/Installer.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/Installer.java index 09fa90f..a83b2a8 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/Installer.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/Installer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/Installers.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/Installers.java index be968de..79b4093 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/Installers.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/Installers.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/InstallersWithDefaults.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/InstallersWithDefaults.java index 77aa97e..e5a92fc 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/InstallersWithDefaults.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/InstallersWithDefaults.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/LocalInstaller.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/LocalInstaller.java index b700ae9..067e16d 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/LocalInstaller.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/LocalInstaller.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/AbstractInstaller.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/AbstractInstaller.java index f07e9d1..bf02376 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/AbstractInstaller.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/AbstractInstaller.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/InstallationResultImpl.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/InstallationResultImpl.java index 5975a64..eab133d 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/InstallationResultImpl.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/InstallationResultImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/InstallersImpl.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/InstallersImpl.java index 3a849da..db52a48 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/InstallersImpl.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/InstallersImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/InstallersWithDefaultsImpl.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/InstallersWithDefaultsImpl.java index ec0104e..164aa8c 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/InstallersWithDefaultsImpl.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/InstallersWithDefaultsImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/cluster/ClusterCommonBundleInstallerHelper.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/cluster/ClusterCommonBundleInstallerHelper.java index 9197aee..ba5abd1 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/cluster/ClusterCommonBundleInstallerHelper.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/cluster/ClusterCommonBundleInstallerHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/cluster/ClusterInstallerWrapperImpl.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/cluster/ClusterInstallerWrapperImpl.java index 47b8f77..1863bae 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/cluster/ClusterInstallerWrapperImpl.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/cluster/ClusterInstallerWrapperImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/cluster/ClusterTypedInstallerHelper.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/cluster/ClusterTypedInstallerHelper.java index b767392..fc30810 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/cluster/ClusterTypedInstallerHelper.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/cluster/ClusterTypedInstallerHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/cluster/DefaultCellarInstaller.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/cluster/DefaultCellarInstaller.java index 0f81d96..33fdd02 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/cluster/DefaultCellarInstaller.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/cluster/DefaultCellarInstaller.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/local/DefaultLocalInstaller.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/local/DefaultLocalInstaller.java index 2ab9227..1a09f66 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/local/DefaultLocalInstaller.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/local/DefaultLocalInstaller.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/local/LocalCommonBundleInstallerHelper.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/local/LocalCommonBundleInstallerHelper.java index 340284b..466112c 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/local/LocalCommonBundleInstallerHelper.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/local/LocalCommonBundleInstallerHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/local/LocalTypedInstallerHelper.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/local/LocalTypedInstallerHelper.java index cf29444..6b4a8af 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/local/LocalTypedInstallerHelper.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/impl/local/LocalTypedInstallerHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/BlueprintInstaller.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/BlueprintInstaller.java index 6cf006a..a335369 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/BlueprintInstaller.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/BlueprintInstaller.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/BundleInstaller.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/BundleInstaller.java index 19d1150..278fbe8 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/BundleInstaller.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/BundleInstaller.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/CommonBundleInstaller.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/CommonBundleInstaller.java index b7fb491..8e638e5 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/CommonBundleInstaller.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/CommonBundleInstaller.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/ConfigInstaller.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/ConfigInstaller.java index 84206c8..350bdcb 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/ConfigInstaller.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/ConfigInstaller.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/FeaturesInstaller.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/FeaturesInstaller.java index c0bb55d..c47902b 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/FeaturesInstaller.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/FeaturesInstaller.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/JarInstaller.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/JarInstaller.java index 2377d57..ba812a2 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/JarInstaller.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/JarInstaller.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/StartAware.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/StartAware.java index 56fb150..93c271e 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/StartAware.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/StartAware.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/StopAware.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/StopAware.java index 9a30baf..c5b5b95 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/StopAware.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/StopAware.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/TypedInstaller.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/TypedInstaller.java index 83596db..ec416cf 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/TypedInstaller.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/TypedInstaller.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/BlueprintInstallerImpl.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/BlueprintInstallerImpl.java index ecf57ba..4810005 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/BlueprintInstallerImpl.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/BlueprintInstallerImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/BundleInstallerImpl.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/BundleInstallerImpl.java index efe7bca..025a9b1 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/BundleInstallerImpl.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/BundleInstallerImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/CommonBundleInstallerHelper.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/CommonBundleInstallerHelper.java index 42eee49..fa35c31 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/CommonBundleInstallerHelper.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/CommonBundleInstallerHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/CommonBundleInstallerHelperConfig.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/CommonBundleInstallerHelperConfig.java index a410589..4fb0e8d 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/CommonBundleInstallerHelperConfig.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/CommonBundleInstallerHelperConfig.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/CommonBundleInstallerImpl.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/CommonBundleInstallerImpl.java index 84e9545..7838a76 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/CommonBundleInstallerImpl.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/CommonBundleInstallerImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/JarInstallerImpl.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/JarInstallerImpl.java index c3761ac..7b463dd 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/JarInstallerImpl.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/JarInstallerImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/TypedInstallerHelper.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/TypedInstallerHelper.java index 648865d..25fff40 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/TypedInstallerHelper.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/TypedInstallerHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/TypedInstallerImpl.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/TypedInstallerImpl.java index 2f97fa2..76ceb9e 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/TypedInstallerImpl.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/builder/typed/impl/TypedInstallerImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/impl/AbstractArtifactInstaller.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/impl/AbstractArtifactInstaller.java index 72cc7c6..2652a02 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/impl/AbstractArtifactInstaller.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/impl/AbstractArtifactInstaller.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/impl/ArtifactInstallerCollector.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/impl/ArtifactInstallerCollector.java index afe8a7f..f994ffc 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/impl/ArtifactInstallerCollector.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/impl/ArtifactInstallerCollector.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/impl/DefaultClusterArtifactInstaller.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/impl/DefaultClusterArtifactInstaller.java index 1e2e439..c485c01 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/impl/DefaultClusterArtifactInstaller.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/impl/DefaultClusterArtifactInstaller.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/impl/DefaultLocalArtifactInstaller.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/impl/DefaultLocalArtifactInstaller.java index 285d937..1b93256 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/impl/DefaultLocalArtifactInstaller.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/installer/impl/DefaultLocalArtifactInstaller.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/legacy/BundleController.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/legacy/BundleController.java index f63a9be..237f6c8 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/legacy/BundleController.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/legacy/BundleController.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * cellar-deployer * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/ArtifactRepository.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/ArtifactRepository.java index b892382..3bdd05d 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/ArtifactRepository.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/ArtifactRepository.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/ArtifactRepositoryInitializer.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/ArtifactRepositoryInitializer.java index c853baa..079468b 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/ArtifactRepositoryInitializer.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/ArtifactRepositoryInitializer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -23,9 +23,9 @@ import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import java.util.Map; import java.util.stream.Collectors; +import org.apache.commons.codec.digest.DigestUtils; import org.apache.felix.utils.properties.TypedProperties; import org.apache.karaf.config.core.ConfigRepository; import org.osgi.framework.InvalidSyntaxException; @@ -142,21 +142,42 @@ public class ArtifactRepositoryInitializer extends AbstractInitializer { ServiceReference ref1 = this.bundleContext.getServiceReference(ConfigRepository.class); this.configRepository = this.bundleContext.getService(ref1); + /* + ServiceReference refCa = this.bundleContext.getServiceReference(ConfigurationAdmin.class); + ConfigurationAdmin ca = this.bundleContext.getService(refCa); + + Dictionary clearProps = new Hashtable<>(); + + try { + Configuration config = ca.getConfiguration(MVN_PID); + clearProps = config.getProperties(); + } catch (IOException e1) { + log.error("Error getting config: " + MVN_PID, e1); + } + */ + try { TypedProperties properties = this.configRepository.getConfig(MVN_PID); + + String hashKey = PROP_ENTAXY_REPO_LIST + ".md5"; - properties.put(PROP_ENTAXY_REPO_LIST, repositoryUrlsResult); - this.configRepository.update(MVN_PID, properties); + String newHash = DigestUtils.md5Hex(repositoryUrlsResult); + String currentHash = properties.getOrDefault(hashKey, "").toString(); + + // To avoid extra config rewriting + // which may cause config loss while updating + if (!newHash.equals(currentHash)) { + properties.put(PROP_ENTAXY_REPO_LIST, repositoryUrlsResult); + properties.put(hashKey, newHash); + this.configRepository.update(MVN_PID, properties); + } } catch (IOException e) { - // TODO Auto-generated catch block - e.printStackTrace(); + log.error("Error updating config", e); } catch (InvalidSyntaxException e) { - // TODO Auto-generated catch block - e.printStackTrace(); + log.error("Error updating config", e); } - } @Override diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/ArtifactRepositoryImpl.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/ArtifactRepositoryImpl.java index 54a8153..0b85ac7 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/ArtifactRepositoryImpl.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/ArtifactRepositoryImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/DeployedArtifactImpl.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/DeployedArtifactImpl.java index b2989db..0752e26 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/DeployedArtifactImpl.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/DeployedArtifactImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/RepositoryConfigurableHelper.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/RepositoryConfigurableHelper.java index cef2b10..9ee131a 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/RepositoryConfigurableHelper.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/RepositoryConfigurableHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/RepositoryConfigurableHelperCollector.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/RepositoryConfigurableHelperCollector.java index dddb650..119a23b 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/RepositoryConfigurableHelperCollector.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/RepositoryConfigurableHelperCollector.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/RepositoryDescriptor.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/RepositoryDescriptor.java index cc7d609..e483c09 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/RepositoryDescriptor.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/RepositoryDescriptor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/AbstractRemoteRepository.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/AbstractRemoteRepository.java index b3e01e3..7dd6f32 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/AbstractRemoteRepository.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/AbstractRemoteRepository.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/NexusRepository.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/NexusRepository.java index 51b5085..946c752 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/NexusRepository.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/NexusRepository.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/RemoteRepository.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/RemoteRepository.java index b93932b..220a729 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/RemoteRepository.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/RemoteRepository.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/RemoteRepositoryDescriptor.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/RemoteRepositoryDescriptor.java index 29a6e72..8140da6 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/RemoteRepositoryDescriptor.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/RemoteRepositoryDescriptor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/RemoteRepositoryFactory.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/RemoteRepositoryFactory.java index 28e6301..c52a679 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/RemoteRepositoryFactory.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/repository/impl/remote/RemoteRepositoryFactory.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/service/ArtifactService.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/service/ArtifactService.java index 8dd09c6..10681dd 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/service/ArtifactService.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/service/ArtifactService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/service/impl/ArtifactServiceImpl.java b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/service/impl/ArtifactServiceImpl.java index c041cb3..75fda2c 100644 --- a/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/service/impl/ArtifactServiceImpl.java +++ b/platform/runtime/core/artifact-management/src/main/java/ru/entaxy/platform/core/artifact/service/impl/ArtifactServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artifact-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/non-packaged-resources/etc/ru.entaxy.esb.artifact.repositories.cfg b/platform/runtime/core/artifact-management/src/main/non-packaged-resources/etc/ru.entaxy.esb.artifact.repositories.cfg index 427b4f6..51c8103 100644 --- a/platform/runtime/core/artifact-management/src/main/non-packaged-resources/etc/ru.entaxy.esb.artifact.repositories.cfg +++ b/platform/runtime/core/artifact-management/src/main/non-packaged-resources/etc/ru.entaxy.esb.artifact.repositories.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # artifact-management # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/artifact-management/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/platform/runtime/core/artifact-management/src/main/resources/OSGI-INF/blueprint/blueprint.xml index cc2f65e..91b8f7e 100644 --- a/platform/runtime/core/artifact-management/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/platform/runtime/core/artifact-management/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ uniform-service-exchange-endpoint ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/cluster/cluster-persistence-service/pom.xml b/platform/runtime/core/cluster/cluster-persistence-service/pom.xml index 3e7c009..f64cf59 100644 --- a/platform/runtime/core/cluster/cluster-persistence-service/pom.xml +++ b/platform/runtime/core/cluster/cluster-persistence-service/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime.core cluster - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core.cluster cluster-persistence-service diff --git a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/Helper.java b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/Helper.java index dc45e8b..d482db5 100644 --- a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/Helper.java +++ b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/Helper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * cluster-persistence-service * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/PersistenceManager.java b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/PersistenceManager.java index 16ab4e4..8fbc8df 100644 --- a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/PersistenceManager.java +++ b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/PersistenceManager.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * cluster-persistence-service * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/Serializer.java b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/Serializer.java index dde57eb..f513284 100644 --- a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/Serializer.java +++ b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/Serializer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * cluster-persistence-service * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/ServiceProvider.java b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/ServiceProvider.java index 01c9ba0..aa82882 100644 --- a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/ServiceProvider.java +++ b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/ServiceProvider.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * cluster-persistence-service * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/activator/Activator.java b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/activator/Activator.java index c33827c..f45d9f8 100644 --- a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/activator/Activator.java +++ b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/activator/Activator.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * hazelcast-test * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalBundleEventHandler.java b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalBundleEventHandler.java index 91d009a..3ff8467 100644 --- a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalBundleEventHandler.java +++ b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalBundleEventHandler.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * cluster-persistence-service * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalEventDispatchTask.java b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalEventDispatchTask.java index 3e71aa3..4180b89 100644 --- a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalEventDispatchTask.java +++ b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalEventDispatchTask.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * cluster-persistence-service * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalEventHandlerRegistryDispatcher.java b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalEventHandlerRegistryDispatcher.java index b565daf..275e2c3 100644 --- a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalEventHandlerRegistryDispatcher.java +++ b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalEventHandlerRegistryDispatcher.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * cluster-persistence-service * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalHandlerRegistry.java b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalHandlerRegistry.java index 86607f8..9ed5a4d 100644 --- a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalHandlerRegistry.java +++ b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalHandlerRegistry.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * cluster-persistence-service * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalTopicConsumer.java b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalTopicConsumer.java index 695d136..aca0f54 100644 --- a/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalTopicConsumer.java +++ b/platform/runtime/core/cluster/cluster-persistence-service/src/main/java/ru/entaxy/esb/platform/core/cluster/persistence/handler/LocalTopicConsumer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * cluster-persistence-service * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/cluster/pom.xml b/platform/runtime/core/cluster/pom.xml index bd43c2c..28a167c 100644 --- a/platform/runtime/core/cluster/pom.xml +++ b/platform/runtime/core/cluster/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime core - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core cluster diff --git a/platform/runtime/core/infrastructure/pom.xml b/platform/runtime/core/infrastructure/pom.xml index 8db5bcc..e27d1c7 100644 --- a/platform/runtime/core/infrastructure/pom.xml +++ b/platform/runtime/core/infrastructure/pom.xml @@ -1,13 +1,11 @@ - + 4.0.0 ru.entaxy.esb.platform.runtime core - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core diff --git a/platform/runtime/core/infrastructure/schema/pom.xml b/platform/runtime/core/infrastructure/schema/pom.xml index e533f79..fabf65b 100644 --- a/platform/runtime/core/infrastructure/schema/pom.xml +++ b/platform/runtime/core/infrastructure/schema/pom.xml @@ -1,11 +1,9 @@ - + ru.entaxy.esb.platform.runtime.core infrastructure - 1.8.2.2 + 1.8.3 4.0.0 pom diff --git a/platform/runtime/core/infrastructure/schema/schema-api/pom.xml b/platform/runtime/core/infrastructure/schema/schema-api/pom.xml index 5b2a9bf..660c7c1 100644 --- a/platform/runtime/core/infrastructure/schema/schema-api/pom.xml +++ b/platform/runtime/core/infrastructure/schema/schema-api/pom.xml @@ -1,11 +1,9 @@ - + ru.entaxy.esb.platform.runtime.core.infrastructure schema - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/core/infrastructure/schema/schema-api/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/api/ResourceService.java b/platform/runtime/core/infrastructure/schema/schema-api/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/api/ResourceService.java index 364bd5a..d730333 100644 --- a/platform/runtime/core/infrastructure/schema/schema-api/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/api/ResourceService.java +++ b/platform/runtime/core/infrastructure/schema/schema-api/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/api/ResourceService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -37,6 +37,8 @@ public interface ResourceService { Optional getResourceByName(String name); + Optional getResourceByFullName(String name); + Optional getResourceByIdAndVersion(long id, String version); void removeResource(long id); @@ -59,6 +61,12 @@ public interface ResourceService { List getListResourceInfoByName(String name); + List getResourceInfoByFullName(String name); + + List getResourceInfoByPath(String path); + + List getResourceInfoByFullPath(String path); + List getListResourceInfoByNamespace(String namespace); } diff --git a/platform/runtime/core/infrastructure/schema/schema-api/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/api/entity/Resource.java b/platform/runtime/core/infrastructure/schema/schema-api/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/api/entity/Resource.java index f5cbef0..34a2577 100644 --- a/platform/runtime/core/infrastructure/schema/schema-api/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/api/entity/Resource.java +++ b/platform/runtime/core/infrastructure/schema/schema-api/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/api/entity/Resource.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-api/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/api/entity/ResourceInfo.java b/platform/runtime/core/infrastructure/schema/schema-api/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/api/entity/ResourceInfo.java index 3cbe4b0..151169e 100644 --- a/platform/runtime/core/infrastructure/schema/schema-api/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/api/entity/ResourceInfo.java +++ b/platform/runtime/core/infrastructure/schema/schema-api/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/api/entity/ResourceInfo.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -50,6 +50,8 @@ public class ResourceInfo { private String editedBy; @Column(name = "namespace_out") private String namespaceOut; + @Column(name = "path") + private String path; @Column(name = "resource_id") private Long resourceId; @@ -150,6 +152,14 @@ public class ResourceInfo { this.resourceId = resourceId; } + public String getPath() { + return path; + } + + public void setPath(String path) { + this.path = path; + } + @Override public String toString() { return "ResourceInfo{" + @@ -158,12 +168,13 @@ public class ResourceInfo { ", namespace='" + namespace + '\'' + ", description='" + description + '\'' + ", version='" + version + '\'' + - ", convertor='" + convertor + '\'' + + ", convertor=" + convertor + ", createdDate=" + createdDate + ", createdBy='" + createdBy + '\'' + ", editedDate=" + editedDate + ", editedBy='" + editedBy + '\'' + ", namespaceOut='" + namespaceOut + '\'' + + ", path='" + path + '\'' + ", resourceId=" + resourceId + '}'; } diff --git a/platform/runtime/core/infrastructure/schema/schema-component/pom.xml b/platform/runtime/core/infrastructure/schema/schema-component/pom.xml index ec2ea7d..4b93af2 100644 --- a/platform/runtime/core/infrastructure/schema/schema-component/pom.xml +++ b/platform/runtime/core/infrastructure/schema/schema-component/pom.xml @@ -1,11 +1,9 @@ - + ru.entaxy.esb.platform.runtime.core.infrastructure schema - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/ValidatingProcessor.java b/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/ValidatingProcessor.java index 37e03b6..729082c 100644 --- a/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/ValidatingProcessor.java +++ b/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/ValidatingProcessor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/ValidatorWithDBStorageComponent.java b/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/ValidatorWithDBStorageComponent.java index db45c8b..d25a833 100644 --- a/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/ValidatorWithDBStorageComponent.java +++ b/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/ValidatorWithDBStorageComponent.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/ValidatorWithDBStorageEndpoint.java b/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/ValidatorWithDBStorageEndpoint.java index 00558a3..681b7f4 100644 --- a/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/ValidatorWithDBStorageEndpoint.java +++ b/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/ValidatorWithDBStorageEndpoint.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/ValidatorWithDBStorageProducer.java b/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/ValidatorWithDBStorageProducer.java index 16b0f1a..e97e214 100644 --- a/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/ValidatorWithDBStorageProducer.java +++ b/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/ValidatorWithDBStorageProducer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/exception/SchemaNotFoundException.java b/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/exception/SchemaNotFoundException.java index f83b7cd..5bded9f 100644 --- a/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/exception/SchemaNotFoundException.java +++ b/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/exception/SchemaNotFoundException.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/util/SchemaReaderFromDB.java b/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/util/SchemaReaderFromDB.java index 67c63b1..f0ff0be 100644 --- a/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/util/SchemaReaderFromDB.java +++ b/platform/runtime/core/infrastructure/schema/schema-component/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/component/util/SchemaReaderFromDB.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -208,9 +208,9 @@ public class SchemaReaderFromDB { Optional resource = Optional.empty(); if (schemaResourceUri != null && schemaResourceUri.contains("namespace:")) { resource = resourceService.getResourceByNamespace(schemaResourceUri.replace("namespace:", "")); - } - - if (schemaResourceUri != null && schemaResourceUri.contains("uuid:")) { + } else if (schemaResourceUri != null && schemaResourceUri.contains("name:")) { + resource = resourceService.getResourceByFullName(schemaResourceUri.replace("name:", "")); + } else if (schemaResourceUri != null && schemaResourceUri.contains("uuid:")) { resource = resourceService.getResourceByNamespace(schemaResourceUri.replace("uuid:", "")); } diff --git a/platform/runtime/core/infrastructure/schema/schema-component/src/main/resources/log4j2.properties b/platform/runtime/core/infrastructure/schema/schema-component/src/main/resources/log4j2.properties index e3e8215..8fc66d4 100644 --- a/platform/runtime/core/infrastructure/schema/schema-component/src/main/resources/log4j2.properties +++ b/platform/runtime/core/infrastructure/schema/schema-component/src/main/resources/log4j2.properties @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # schema-component # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-impl/pom.xml b/platform/runtime/core/infrastructure/schema/schema-impl/pom.xml index 9ee0323..8ec4781 100644 --- a/platform/runtime/core/infrastructure/schema/schema-impl/pom.xml +++ b/platform/runtime/core/infrastructure/schema/schema-impl/pom.xml @@ -1,11 +1,9 @@ - + ru.entaxy.esb.platform.runtime.core.infrastructure schema - 1.8.2.2 + 1.8.3 4.0.0 @@ -28,6 +26,7 @@ ru.entaxy.esb.platform.runtime.core.infrastructure.schema.resolver.resource.*, ru.entaxy.esb.platform.runtime.core.infrastructure.schema.impl.*, + 1.4.0 @@ -69,5 +68,15 @@ schema-api ${project.version} + + org.apache.camel + camel-file + ${camel.version} + + + org.osgi + org.osgi.service.component.annotations + ${org.osgi.annotations} + \ No newline at end of file diff --git a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/exception/ResourceInfoNotFound.java b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/exception/ResourceInfoNotFound.java index 11a272d..cb2814f 100644 --- a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/exception/ResourceInfoNotFound.java +++ b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/exception/ResourceInfoNotFound.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/exception/ResourceNotFound.java b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/exception/ResourceNotFound.java index 4518205..6d566aa 100644 --- a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/exception/ResourceNotFound.java +++ b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/exception/ResourceNotFound.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/impl/ResourceServiceImpl.java b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/impl/ResourceServiceImpl.java index a942138..a306032 100644 --- a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/impl/ResourceServiceImpl.java +++ b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/impl/ResourceServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,6 +30,7 @@ import ru.entaxy.esb.platform.runtime.core.infrastructure.schema.exception.Resou import javax.persistence.EntityNotFoundException; import javax.persistence.criteria.CriteriaBuilder; import javax.persistence.criteria.CriteriaQuery; +import javax.persistence.criteria.Expression; import javax.persistence.criteria.Root; import java.util.List; import java.util.Optional; @@ -142,6 +143,34 @@ public class ResourceServiceImpl implements ResourceService { return resource; } + @Override + public Optional getResourceByFullName(String name) { + Optional resourceInfo; + Optional resource; + try (Session s = getSession()) { + s.getTransaction().begin(); + + CriteriaBuilder builder = s.getCriteriaBuilder(); + CriteriaQuery criteriaQuery = builder.createQuery(ResourceInfo.class); + Root root = criteriaQuery.from(ResourceInfo.class); + + Expression concat = builder.concat(root.get("name"), root.get("path")); + criteriaQuery.where( + builder.equal(concat, name) + ); + resourceInfo = s.createQuery(criteriaQuery).uniqueResultOptional(); + + if (resourceInfo.isEmpty()) { + throw new ResourceInfoNotFound(); + } + + resource = getResource(resourceInfo.get().getResourceId()); + s.getTransaction().commit(); + s.close(); + } + return resource; + } + @Override public Optional getResourceByIdAndVersion(long id, String version) { Optional resourceInfo; @@ -337,6 +366,67 @@ public class ResourceServiceImpl implements ResourceService { return list; } + @Override + public List getResourceInfoByFullName(String name) { + List list; + try (Session s = getSession()) { + s.getTransaction().begin(); + + CriteriaBuilder builder = s.getCriteriaBuilder(); + CriteriaQuery criteriaQuery = builder.createQuery(ResourceInfo.class); + Root root = criteriaQuery.from(ResourceInfo.class); + Expression concat = builder.concat(root.get("path"), root.get("name")); + criteriaQuery.where( + builder.equal(concat, name) + ); + list = s.createQuery(criteriaQuery).getResultList(); + + s.getTransaction().commit(); + s.close(); + } + return list; + } + + @Override + public List getResourceInfoByPath(String path) { + List list; + try (Session s = getSession()) { + s.getTransaction().begin(); + + CriteriaBuilder builder = s.getCriteriaBuilder(); + CriteriaQuery criteriaQuery = builder.createQuery(ResourceInfo.class); + Root root = criteriaQuery.from(ResourceInfo.class); + criteriaQuery.where( + builder.like(root.get("path"), "%" + path + "%") + ); + list = s.createQuery(criteriaQuery).getResultList(); + + s.getTransaction().commit(); + s.close(); + } + return list; + } + + @Override + public List getResourceInfoByFullPath(String path) { + List list; + try (Session s = getSession()) { + s.getTransaction().begin(); + + CriteriaBuilder builder = s.getCriteriaBuilder(); + CriteriaQuery criteriaQuery = builder.createQuery(ResourceInfo.class); + Root root = criteriaQuery.from(ResourceInfo.class); + criteriaQuery.where( + builder.equal(root.get("path"), path) + ); + list = s.createQuery(criteriaQuery).getResultList(); + + s.getTransaction().commit(); + s.close(); + } + return list; + } + @Override public List getListResourceInfoByNamespace(String namespace) { List list; diff --git a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/resolver/resource/CxfDBResourceResolver.java b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/resolver/resource/CxfDBResourceResolver.java index 18b8efa..3419d67 100644 --- a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/resolver/resource/CxfDBResourceResolver.java +++ b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/resolver/resource/CxfDBResourceResolver.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/resolver/resource/DBResolverSettings.java b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/resolver/resource/DBResolverSettings.java index 7ee046a..19778e0 100644 --- a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/resolver/resource/DBResolverSettings.java +++ b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/resolver/resource/DBResolverSettings.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/resolver/resource/DBResourceResolver.java b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/resolver/resource/DBResourceResolver.java index df3b673..e04a6b4 100644 --- a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/resolver/resource/DBResourceResolver.java +++ b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/resolver/resource/DBResourceResolver.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/resolver/resource/XslUrlResolver.java b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/resolver/resource/XslUrlResolver.java index f94753d..4275e75 100644 --- a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/resolver/resource/XslUrlResolver.java +++ b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/resolver/resource/XslUrlResolver.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml index dd307be..424c368 100644 --- a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ schema-impl ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/resources/hibernate.cfg.xml b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/resources/hibernate.cfg.xml index 541e4ea..3238db9 100644 --- a/platform/runtime/core/infrastructure/schema/schema-impl/src/main/resources/hibernate.cfg.xml +++ b/platform/runtime/core/infrastructure/schema/schema-impl/src/main/resources/hibernate.cfg.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ schema-impl ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/pom.xml b/platform/runtime/core/infrastructure/schema/schema-soap/pom.xml index 0ada81a..b73ffe2 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/pom.xml +++ b/platform/runtime/core/infrastructure/schema/schema-soap/pom.xml @@ -1,11 +1,9 @@ - + ru.entaxy.esb.platform.runtime.core.infrastructure schema - 1.8.2.2 + 1.8.3 4.0.0 @@ -126,9 +124,10 @@ ${basedir}/src/main/resources/wsdl/registry-schema-service.wsdl + classpath:wsdl/registry-schema-service.wsdl -p - ru.entaxy.esb.system.registry.schema.soap.cxf + ru.entaxy.esb.platform.runtime.core.infrastructure.schema.soap.cxf -bareMethods true diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/RegistrySchemaServiceImpl.java b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/RegistrySchemaServiceImpl.java index 45d9e12..785d3f5 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/RegistrySchemaServiceImpl.java +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/RegistrySchemaServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-soap * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -77,6 +77,7 @@ public class RegistrySchemaServiceImpl implements RegistrySchemaService { @Override public String loadResourceInfo(ResourceInfoType request, String header) { try { + request.setPath(preparePath(request.getPath())); ResourceInfo resourceInfo = resourceMapper.toResourceInfo(request); resourceInfo.setCreatedBy(header); return String.valueOf(resourceService.loadResourceInfo(resourceInfo)); @@ -88,6 +89,7 @@ public class RegistrySchemaServiceImpl implements RegistrySchemaService { @Override public String editResourceInfo(EditedResourceInfoFullType request, String header) { try { + request.setPath(preparePath(request.getPath())); ResourceInfo resourceInfo = resourceMapper.editedResourceInfoFullTypeResourceInfo(request); resourceInfo.setEditedBy(header); return String.valueOf(resourceService.editResourceInfo(resourceInfo)); @@ -142,6 +144,45 @@ public class RegistrySchemaServiceImpl implements RegistrySchemaService { } } + @Override + public GetResourceInfoList getResourceInfoListByFullName(GetResourceInfoListByFullNameRequest request) { + try { + GetResourceInfoList list = new GetResourceInfoList(); + for (ResourceInfo resourceInfo : resourceService.getResourceInfoByFullName(request.getFullName())) { + list.getResourceInfoFullType().add(resourceMapper.toResourceInfoFullType(resourceInfo)); + } + return list; + } catch (Exception e) { + throw new RuntimeException(e.getMessage(), e); + } + } + + @Override + public GetResourceInfoList getResourceInfoListByPath(GetResourceInfoListByPathRequest request) { + try { + GetResourceInfoList list = new GetResourceInfoList(); + for (ResourceInfo resourceInfo : resourceService.getResourceInfoByPath(request.getPath())) { + list.getResourceInfoFullType().add(resourceMapper.toResourceInfoFullType(resourceInfo)); + } + return list; + } catch (Exception e) { + throw new RuntimeException(e.getMessage(), e); + } + } + + @Override + public GetResourceInfoList getResourceInfoListByFullPath(GetResourceInfoListByFullPathRequest request) { + try { + GetResourceInfoList list = new GetResourceInfoList(); + for (ResourceInfo resourceInfo : resourceService.getResourceInfoByFullPath(preparePath(request.getPath()))) { + list.getResourceInfoFullType().add(resourceMapper.toResourceInfoFullType(resourceInfo)); + } + return list; + } catch (Exception e) { + throw new RuntimeException(e.getMessage(), e); + } + } + @Override public GetResourceInfoList getResourceInfoListByNamespace(GetResourceInfoListByNamespaceRequest request) { try { @@ -155,6 +196,13 @@ public class RegistrySchemaServiceImpl implements RegistrySchemaService { } } + public String preparePath(String path) { + if (path != null && !path.isEmpty() && !(path.charAt(path.length() - 1) == '/')) { + path = path + "/"; + } + return path; + } + public void setResourceService(ResourceService resourceService) { this.resourceService = resourceService; } diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/EditedResourceInfoFullType.java b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/EditedResourceInfoFullType.java index 7fc741f..7d4f739 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/EditedResourceInfoFullType.java +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/EditedResourceInfoFullType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-soap * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -37,6 +37,7 @@ import javax.xml.bind.annotation.XmlType; * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element name="id" type="{http://www.w3.org/2001/XMLSchema}long"/> + * <element name="path" type="{http://www.w3.org/2001/XMLSchema}string"/> * <element name="idResource" type="{http://www.w3.org/2001/XMLSchema}long"/> * <element name="name" type="{http://www.w3.org/2001/XMLSchema}string"/> * <element name="version" type="{http://www.w3.org/2001/XMLSchema}string"/> @@ -55,6 +56,7 @@ import javax.xml.bind.annotation.XmlType; @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "EditedResourceInfoFullType", propOrder = { "id", + "path", "idResource", "name", "version", @@ -66,6 +68,8 @@ import javax.xml.bind.annotation.XmlType; public class EditedResourceInfoFullType { protected long id; + @XmlElement(required = true) + protected String path; protected long idResource; @XmlElement(required = true) protected String name; @@ -94,6 +98,30 @@ public class EditedResourceInfoFullType { this.id = value; } + /** + * Gets the value of the path property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getPath() { + return path; + } + + /** + * Sets the value of the path property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setPath(String value) { + this.path = value; + } + /** * Gets the value of the idResource property. * diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/FullResourceType.java b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/FullResourceType.java index 19023c3..a487214 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/FullResourceType.java +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/FullResourceType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-soap * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/GetResourceInfoList.java b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/GetResourceInfoList.java index e9b8d1b..126583b 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/GetResourceInfoList.java +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/GetResourceInfoList.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-soap * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/GetResourceInfoListByNameRequest.java b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/GetResourceInfoListByNameRequest.java index 491bd54..204adae 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/GetResourceInfoListByNameRequest.java +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/GetResourceInfoListByNameRequest.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-soap * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/GetResourceInfoListByNamespaceRequest.java b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/GetResourceInfoListByNamespaceRequest.java index 925aec3..5b04810 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/GetResourceInfoListByNamespaceRequest.java +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/GetResourceInfoListByNamespaceRequest.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-soap * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/GetResourceInfoListRequest.java b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/GetResourceInfoListRequest.java index d9141ca..699f153 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/GetResourceInfoListRequest.java +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/GetResourceInfoListRequest.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-soap * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/LoadResourceType.java b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/LoadResourceType.java index 3a4ce99..6986912 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/LoadResourceType.java +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/LoadResourceType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-soap * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/ObjectFactory.java b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/ObjectFactory.java index de6656f..2e6f602 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/ObjectFactory.java +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/ObjectFactory.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-soap * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,7 +29,7 @@ import javax.xml.namespace.QName; /** * This object contains factory methods for each * Java content interface and Java element interface - * generated in the ru.entaxy.esb.system.registry.schema.soap.cxf package. + * generated in the ru.entaxy.esb.platform.runtime.core.infrastructure.schema.soap.cxf package. *

An ObjectFactory allows you to programatically * construct new instances of the Java representation * for XML content. The Java representation of XML @@ -58,7 +58,7 @@ public class ObjectFactory { private final static QName _Response_QNAME = new QName("http://www.entaxy.ru/registry-schema-service/", "response"); /** - * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: ru.entaxy.esb.system.registry.schema.soap.cxf + * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: ru.entaxy.esb.platform.runtime.core.infrastructure.schema.soap.cxf * */ public ObjectFactory() { @@ -128,6 +128,30 @@ public class ObjectFactory { return new GetResourceInfoListByNameRequest(); } + /** + * Create an instance of {@link GetResourceInfoListByFullNameRequest } + * + */ + public GetResourceInfoListByFullNameRequest createGetResourceInfoListByFullNameRequest() { + return new GetResourceInfoListByFullNameRequest(); + } + + /** + * Create an instance of {@link GetResourceInfoListByPathRequest } + * + */ + public GetResourceInfoListByPathRequest createGetResourceInfoListByPathRequest() { + return new GetResourceInfoListByPathRequest(); + } + + /** + * Create an instance of {@link GetResourceInfoListByFullPathRequest } + * + */ + public GetResourceInfoListByFullPathRequest createGetResourceInfoListByFullPathRequest() { + return new GetResourceInfoListByFullPathRequest(); + } + /** * Create an instance of {@link GetResourceInfoListByNamespaceRequest } * diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/RegistrySchemaService.java b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/RegistrySchemaService.java index 3fa1e46..a9e9d28 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/RegistrySchemaService.java +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/RegistrySchemaService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-soap * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -28,7 +28,7 @@ import javax.xml.bind.annotation.XmlSeeAlso; /** * This class was generated by Apache CXF 3.3.6 - * 2021-02-03T15:56:39.006+07:00 + * 2022-11-24T13:47:15.641+03:00 * Generated source version: 3.3.6 * */ @@ -37,20 +37,12 @@ import javax.xml.bind.annotation.XmlSeeAlso; @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE) public interface RegistrySchemaService { - @WebMethod(action = "http://www.entaxy.ru/registry-schema-service/get-resourceInfo-info-list-by-namespace") + @WebMethod @WebResult(name = "getResourceInfoListResponse", targetNamespace = "http://www.entaxy.ru/registry-schema-service/", partName = "response") - public GetResourceInfoList getResourceInfoListByNamespace( + public GetResourceInfoList getResourceInfoListByFullPath( - @WebParam(partName = "request", name = "getResourceInfoListByNamespaceRequest", targetNamespace = "http://www.entaxy.ru/registry-schema-service/") - GetResourceInfoListByNamespaceRequest request - ); - - @WebMethod(action = "http://www.entaxy.ru/registry-schema-service/remove-resourceInfo") - @WebResult(name = "response", targetNamespace = "http://www.entaxy.ru/registry-schema-service/", partName = "response") - public java.lang.String removeResource( - - @WebParam(partName = "request", name = "removeResourceRequest", targetNamespace = "http://www.entaxy.ru/registry-schema-service/") - long request + @WebParam(partName = "request", name = "getResourceInfoListByFullPathRequest", targetNamespace = "http://www.entaxy.ru/registry-schema-service/") + GetResourceInfoListByFullPathRequest request ); @WebMethod(action = "http://www.entaxy.ru/registry-schema-service/get-resourceInfo-info-list") @@ -89,16 +81,6 @@ public interface RegistrySchemaService { java.lang.String header ); - @WebMethod(action = "http://www.entaxy.ru/registry-schema-service/edit-resourceInfo-info") - @WebResult(name = "response", targetNamespace = "http://www.entaxy.ru/registry-schema-service/", partName = "response") - public java.lang.String editResourceInfo( - - @WebParam(partName = "request", name = "editResourceInfoRequest", targetNamespace = "http://www.entaxy.ru/registry-schema-service/") - EditedResourceInfoFullType request, - @WebParam(partName = "header", name = "createdBy", targetNamespace = "http://www.entaxy.ru/registry-schema-service/", header = true) - java.lang.String header - ); - @WebMethod(action = "http://www.entaxy.ru/registry-schema-service/remove-resourceInfo-info") @WebResult(name = "response", targetNamespace = "http://www.entaxy.ru/registry-schema-service/", partName = "response") public java.lang.String removeResourceInfo( @@ -125,6 +107,48 @@ public interface RegistrySchemaService { GetResourceInfoListByNameRequest request ); + @WebMethod(action = "http://www.entaxy.ru/registry-schema-service/get-resourceInfo-info-list-by-namespace") + @WebResult(name = "getResourceInfoListResponse", targetNamespace = "http://www.entaxy.ru/registry-schema-service/", partName = "response") + public GetResourceInfoList getResourceInfoListByNamespace( + + @WebParam(partName = "request", name = "getResourceInfoListByNamespaceRequest", targetNamespace = "http://www.entaxy.ru/registry-schema-service/") + GetResourceInfoListByNamespaceRequest request + ); + + @WebMethod + @WebResult(name = "getResourceInfoListResponse", targetNamespace = "http://www.entaxy.ru/registry-schema-service/", partName = "response") + public GetResourceInfoList getResourceInfoListByPath( + + @WebParam(partName = "request", name = "getResourceInfoListByPathRequest", targetNamespace = "http://www.entaxy.ru/registry-schema-service/") + GetResourceInfoListByPathRequest request + ); + + @WebMethod(action = "http://www.entaxy.ru/registry-schema-service/remove-resourceInfo") + @WebResult(name = "response", targetNamespace = "http://www.entaxy.ru/registry-schema-service/", partName = "response") + public java.lang.String removeResource( + + @WebParam(partName = "request", name = "removeResourceRequest", targetNamespace = "http://www.entaxy.ru/registry-schema-service/") + long request + ); + + @WebMethod + @WebResult(name = "getResourceInfoListResponse", targetNamespace = "http://www.entaxy.ru/registry-schema-service/", partName = "response") + public GetResourceInfoList getResourceInfoListByFullName( + + @WebParam(partName = "request", name = "getResourceInfoListByFullNameRequest", targetNamespace = "http://www.entaxy.ru/registry-schema-service/") + GetResourceInfoListByFullNameRequest request + ); + + @WebMethod(action = "http://www.entaxy.ru/registry-schema-service/edit-resourceInfo-info") + @WebResult(name = "response", targetNamespace = "http://www.entaxy.ru/registry-schema-service/", partName = "response") + public java.lang.String editResourceInfo( + + @WebParam(partName = "request", name = "editResourceInfoRequest", targetNamespace = "http://www.entaxy.ru/registry-schema-service/") + EditedResourceInfoFullType request, + @WebParam(partName = "header", name = "createdBy", targetNamespace = "http://www.entaxy.ru/registry-schema-service/", header = true) + java.lang.String header + ); + @WebMethod(action = "http://www.entaxy.ru/registry-schema-service/get-resourceInfo-info") @WebResult(name = "getResourceInfoResponse", targetNamespace = "http://www.entaxy.ru/registry-schema-service/", partName = "response") public ResourceInfoFullType getResourceInfo( diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/RegistrySchemaService_Service.java b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/RegistrySchemaService_Service.java index 0c07ceb..ba75f0d 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/RegistrySchemaService_Service.java +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/RegistrySchemaService_Service.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-soap * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,7 +19,6 @@ */ package ru.entaxy.esb.platform.runtime.core.infrastructure.schema.soap.cxf; -import java.net.MalformedURLException; import java.net.URL; import javax.xml.namespace.QName; import javax.xml.ws.WebEndpoint; @@ -29,12 +28,12 @@ import javax.xml.ws.Service; /** * This class was generated by Apache CXF 3.3.6 - * 2021-02-03T15:56:39.112+07:00 + * 2022-11-24T13:47:15.676+03:00 * Generated source version: 3.3.6 * */ @WebServiceClient(name = "registry-schema-service", - wsdlLocation = "file:/C:/Projects/entaxy-framework/system/registry/schema/schema-soap/src/main/resources/wsdl/registry-schema-service.wsdl", + wsdlLocation = "classpath:wsdl/registry-schema-service.wsdl", targetNamespace = "http://www.entaxy.ru/registry-schema-service/") public class RegistrySchemaService_Service extends Service { @@ -43,13 +42,11 @@ public class RegistrySchemaService_Service extends Service { public final static QName SERVICE = new QName("http://www.entaxy.ru/registry-schema-service/", "registry-schema-service"); public final static QName RegistrySchemaServiceSOAP = new QName("http://www.entaxy.ru/registry-schema-service/", "registry-schema-serviceSOAP"); static { - URL url = null; - try { - url = new URL("file:/C:/Projects/entaxy-framework/system/registry/schema/schema-soap/src/main/resources/wsdl/registry-schema-service.wsdl"); - } catch (MalformedURLException e) { + URL url = RegistrySchemaService_Service.class.getClassLoader().getResource("wsdl/registry-schema-service.wsdl"); + if (url == null) { java.util.logging.Logger.getLogger(RegistrySchemaService_Service.class.getName()) .log(java.util.logging.Level.INFO, - "Can not initialize the default wsdl from {0}", "file:/C:/Projects/entaxy-framework/system/registry/schema/schema-soap/src/main/resources/wsdl/registry-schema-service.wsdl"); + "Can not initialize the default wsdl from {0}", "classpath:wsdl/registry-schema-service.wsdl"); } WSDL_LOCATION = url; } diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/ResourceInfoFullType.java b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/ResourceInfoFullType.java index bb87a45..73aa309 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/ResourceInfoFullType.java +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/ResourceInfoFullType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-soap * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -38,6 +38,7 @@ import javax.xml.bind.annotation.XmlType; * <sequence> * <element name="id" type="{http://www.w3.org/2001/XMLSchema}long"/> * <element name="name" type="{http://www.w3.org/2001/XMLSchema}string"/> + * <element name="path" type="{http://www.w3.org/2001/XMLSchema}string"/> * <element name="idResource" type="{http://www.w3.org/2001/XMLSchema}long"/> * <element name="version" type="{http://www.w3.org/2001/XMLSchema}string"/> * <element name="description" type="{http://www.w3.org/2001/XMLSchema}string"/> @@ -60,6 +61,7 @@ import javax.xml.bind.annotation.XmlType; @XmlType(name = "ResourceInfoFullType", propOrder = { "id", "name", + "path", "idResource", "version", "description", @@ -76,6 +78,8 @@ public class ResourceInfoFullType { protected long id; @XmlElement(required = true) protected String name; + @XmlElement(required = true) + protected String path; protected long idResource; @XmlElement(required = true) protected String version; @@ -135,6 +139,30 @@ public class ResourceInfoFullType { this.name = value; } + /** + * Gets the value of the path property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getPath() { + return path; + } + + /** + * Sets the value of the path property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setPath(String value) { + this.path = value; + } + /** * Gets the value of the idResource property. * diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/ResourceInfoType.java b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/ResourceInfoType.java index 6d526a4..ea19d41 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/ResourceInfoType.java +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/ResourceInfoType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-soap * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -37,6 +37,7 @@ import javax.xml.bind.annotation.XmlType; * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element name="name" type="{http://www.w3.org/2001/XMLSchema}string"/> + * <element name="path" type="{http://www.w3.org/2001/XMLSchema}string"/> * <element name="idResource" type="{http://www.w3.org/2001/XMLSchema}long"/> * <element name="version" type="{http://www.w3.org/2001/XMLSchema}string"/> * <element name="description" type="{http://www.w3.org/2001/XMLSchema}string"/> @@ -54,6 +55,7 @@ import javax.xml.bind.annotation.XmlType; @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "ResourceInfoType", propOrder = { "name", + "path", "idResource", "version", "description", @@ -65,6 +67,8 @@ public class ResourceInfoType { @XmlElement(required = true) protected String name; + @XmlElement(required = true) + protected String path; protected long idResource; @XmlElement(required = true) protected String version; @@ -100,6 +104,30 @@ public class ResourceInfoType { this.name = value; } + /** + * Gets the value of the path property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getPath() { + return path; + } + + /** + * Sets the value of the path property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setPath(String value) { + this.path = value; + } + /** * Gets the value of the idResource property. * diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/ResourceType.java b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/ResourceType.java index cfaf486..b2ee813 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/ResourceType.java +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/ResourceType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-soap * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/package-info.java b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/package-info.java index afe8ab2..9f52315 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/package-info.java +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/cxf/package-info.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-soap * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/mapper/ResourceMapper.java b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/mapper/ResourceMapper.java index 05c957d..bbd9db7 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/mapper/ResourceMapper.java +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/java/ru/entaxy/esb/platform/runtime/core/infrastructure/schema/soap/mapper/ResourceMapper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * schema-soap * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/non-packaged-resources/etc/ru.entaxy.esb.platform.runtime.core.infrastructure.schema.cfg b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/non-packaged-resources/etc/ru.entaxy.esb.platform.runtime.core.infrastructure.schema.cfg index 9b4acb2..5cc4ae2 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/non-packaged-resources/etc/ru.entaxy.esb.platform.runtime.core.infrastructure.schema.cfg +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/non-packaged-resources/etc/ru.entaxy.esb.platform.runtime.core.infrastructure.schema.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # karaf-features # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/resources/OSGI-INF/blueprint/blueprint.xml index 388ffd3..d4be6e2 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ schema-soap ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/resources/wsdl/registry-schema-service.wsdl b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/resources/wsdl/registry-schema-service.wsdl index f474cd8..1ead80d 100644 --- a/platform/runtime/core/infrastructure/schema/schema-soap/src/main/resources/wsdl/registry-schema-service.wsdl +++ b/platform/runtime/core/infrastructure/schema/schema-soap/src/main/resources/wsdl/registry-schema-service.wsdl @@ -38,6 +38,7 @@ + @@ -50,6 +51,7 @@ + @@ -66,6 +68,7 @@ + @@ -90,6 +93,27 @@ + + + + + + + + + + + + + + + + + + + + + @@ -179,6 +203,27 @@ + + + + + + + + + + + + + + + + + + + + + @@ -365,6 +410,21 @@ + + + + + + + + + + + + + + + diff --git a/platform/runtime/core/initializer/connection-initializer/pom.xml b/platform/runtime/core/initializer/connection-initializer/pom.xml index d74109f..97befa5 100644 --- a/platform/runtime/core/initializer/connection-initializer/pom.xml +++ b/platform/runtime/core/initializer/connection-initializer/pom.xml @@ -1,11 +1,10 @@ - + ru.entaxy.esb.platform.runtime.core initializer - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/core/initializer/connection-initializer/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/connection/ConnectionInitializer.java b/platform/runtime/core/initializer/connection-initializer/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/connection/ConnectionInitializer.java index d796dd3..2377f1a 100644 --- a/platform/runtime/core/initializer/connection-initializer/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/connection/ConnectionInitializer.java +++ b/platform/runtime/core/initializer/connection-initializer/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/connection/ConnectionInitializer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connection-initializer * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,6 +19,15 @@ */ package ru.entaxy.esb.platform.runtime.core.initializer.connection; +import java.io.File; +import java.io.FilenameFilter; +import java.io.IOException; +import java.io.InputStream; +import java.net.URL; +import java.nio.charset.Charset; +import java.util.List; +import java.util.stream.Collectors; + import org.osgi.framework.BundleContext; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -32,20 +41,10 @@ import ru.entaxy.platform.base.support.FileUtils; import ru.entaxy.platform.base.support.JSONUtils; import ru.entaxy.platform.base.support.osgi.OSGIUtils; import ru.entaxy.platform.core.artifact.ArtifactCoordinates; -import ru.entaxy.platform.core.artifact.service.ArtifactService; import ru.entaxy.platform.core.producer.api.EntaxyProducerService; import ru.entaxy.platform.core.producer.api.EntaxyProducerUtils; import ru.entaxy.platform.core.producer.executor.objectmodel.ObjectModel; -import java.io.File; -import java.io.FilenameFilter; -import java.io.IOException; -import java.io.InputStream; -import java.net.URL; -import java.nio.charset.Charset; -import java.util.List; -import java.util.stream.Collectors; - public class ConnectionInitializer extends AbstractInitializer { private static final Logger log = LoggerFactory.getLogger(ConnectionInitializer.class); @@ -184,10 +183,11 @@ public class ConnectionInitializer extends AbstractInitializer { // EntaxyProducerUtils.InstructionsBuilder builder = EntaxyProducerUtils.instructions() + .lifecycle("general") .any() .command("add-config") .command("pre-generate") - .set(EntaxyProducerService.INSTRUCTIONS.PRINT_OUTPUT, true) + .set(EntaxyProducerService.INSTRUCTIONS.PRINT_OUTPUT, false) .command("build") .set(EntaxyProducerService.INSTRUCTIONS.ARTIFACT.VERSION_POLICY , ArtifactCoordinates.VERSION_POLICY_DATED_EMBEDDED) diff --git a/platform/runtime/core/initializer/connection-initializer/src/main/non-packaged-resources/etc/init/file-connections.json b/platform/runtime/core/initializer/connection-initializer/src/main/non-packaged-resources/etc/init/file-connections.json index a7c9482..23cf94a 100644 --- a/platform/runtime/core/initializer/connection-initializer/src/main/non-packaged-resources/etc/init/file-connections.json +++ b/platform/runtime/core/initializer/connection-initializer/src/main/non-packaged-resources/etc/init/file-connections.json @@ -4,7 +4,8 @@ "factoryId": "file-adapter", "objectId": "entaxy-file", "properties": { - "rootDirectory": "data/shared" + "rootDirectory": "data/shared", + "ext_createResourceProvider": true } }, { @@ -20,9 +21,13 @@ "targetId": "entaxy-file" }, "rootDirectory": { - "isCalculated": true, - "expression": "${__parentConnection}/.entaxy" - } + "@CALCULATED": { + "expression": "${?.__parentConnection}/.entaxy", + "lazy": false, + "allowObjects": false + } + }, + "ext_createResourceProvider": true } } ] diff --git a/platform/runtime/core/initializer/core-initializer/pom.xml b/platform/runtime/core/initializer/core-initializer/pom.xml index fa9273a..2c90eea 100644 --- a/platform/runtime/core/initializer/core-initializer/pom.xml +++ b/platform/runtime/core/initializer/core-initializer/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime.core initializer - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core.initializer core-initializer diff --git a/platform/runtime/core/initializer/core-initializer/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/core/CoreInitializer.java b/platform/runtime/core/initializer/core-initializer/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/core/CoreInitializer.java index 520ddbb..3721043 100644 --- a/platform/runtime/core/initializer/core-initializer/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/core/CoreInitializer.java +++ b/platform/runtime/core/initializer/core-initializer/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/core/CoreInitializer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * core-initializer * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/datasources-initializer/pom.xml b/platform/runtime/core/initializer/datasources-initializer/pom.xml index cd7d2a2..fda3898 100644 --- a/platform/runtime/core/initializer/datasources-initializer/pom.xml +++ b/platform/runtime/core/initializer/datasources-initializer/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime.core initializer - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core.initializer datasources-initializer diff --git a/platform/runtime/core/initializer/datasources-initializer/src/main/assembly/datasources.xml b/platform/runtime/core/initializer/datasources-initializer/src/main/assembly/datasources.xml index dc055cb..4193be0 100644 --- a/platform/runtime/core/initializer/datasources-initializer/src/main/assembly/datasources.xml +++ b/platform/runtime/core/initializer/datasources-initializer/src/main/assembly/datasources.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ entaxy-assembly ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/datasources-initializer/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/datasources/DataSourcesCollector.java b/platform/runtime/core/initializer/datasources-initializer/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/datasources/DataSourcesCollector.java index 51e9fb1..87288bb 100644 --- a/platform/runtime/core/initializer/datasources-initializer/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/datasources/DataSourcesCollector.java +++ b/platform/runtime/core/initializer/datasources-initializer/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/datasources/DataSourcesCollector.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * datasources-initializer * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/datasources-initializer/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/datasources/DataSourcesInitializer.java b/platform/runtime/core/initializer/datasources-initializer/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/datasources/DataSourcesInitializer.java index d52d646..779e242 100644 --- a/platform/runtime/core/initializer/datasources-initializer/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/datasources/DataSourcesInitializer.java +++ b/platform/runtime/core/initializer/datasources-initializer/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/datasources/DataSourcesInitializer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * datasources-initializer * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/datasources-initializer/src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.cache.cfg.h2 b/platform/runtime/core/initializer/datasources-initializer/src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.cache.cfg.h2 index d46430d..3023a35 100644 --- a/platform/runtime/core/initializer/datasources-initializer/src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.cache.cfg.h2 +++ b/platform/runtime/core/initializer/datasources-initializer/src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.cache.cfg.h2 @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # h2-adapter # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/datasources-initializer/src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.cache.cfg.pg b/platform/runtime/core/initializer/datasources-initializer/src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.cache.cfg.pg index 781ffb0..9af4b2c 100644 --- a/platform/runtime/core/initializer/datasources-initializer/src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.cache.cfg.pg +++ b/platform/runtime/core/initializer/datasources-initializer/src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.cache.cfg.pg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # datasources-initializer # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/datasources-initializer/src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.storage.cfg.h2 b/platform/runtime/core/initializer/datasources-initializer/src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.storage.cfg.h2 index 39a177e..54cc79b 100644 --- a/platform/runtime/core/initializer/datasources-initializer/src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.storage.cfg.h2 +++ b/platform/runtime/core/initializer/datasources-initializer/src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.storage.cfg.h2 @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # h2-adapter # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/datasources-initializer/src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.storage.cfg.pg b/platform/runtime/core/initializer/datasources-initializer/src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.storage.cfg.pg index f104be4..f5ba1f1 100644 --- a/platform/runtime/core/initializer/datasources-initializer/src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.storage.cfg.pg +++ b/platform/runtime/core/initializer/datasources-initializer/src/main/non-packaged-resources/etc/org.ops4j.datasource-entaxy.esb.storage.cfg.pg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # datasources-initializer # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/datasources-initializer/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/platform/runtime/core/initializer/datasources-initializer/src/main/resources/OSGI-INF/blueprint/blueprint.xml index 2ea2cf2..d0b25bb 100644 --- a/platform/runtime/core/initializer/datasources-initializer/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/platform/runtime/core/initializer/datasources-initializer/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ datasources-initializer ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/init-manager/pom.xml b/platform/runtime/core/initializer/init-manager/pom.xml index 40b6c31..e1c6733 100644 --- a/platform/runtime/core/initializer/init-manager/pom.xml +++ b/platform/runtime/core/initializer/init-manager/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime.core initializer - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core.initializer init-manager diff --git a/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/Activator.java b/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/Activator.java index 9e6ff4d..37615f2 100644 --- a/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/Activator.java +++ b/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/Activator.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * init-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/InitManager.java b/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/InitManager.java index 2bdbbb9..444bb9d 100644 --- a/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/InitManager.java +++ b/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/InitManager.java @@ -2,14 +2,14 @@ * ~~~~~~licensing~~~~~~ * init-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -61,6 +61,8 @@ public class InitManager { protected static final Logger log = LoggerFactory.getLogger(InitManager.class); + public static final String PROP_SKIP_ALL = "skip.all"; + /** * pid of config to store initialization status (true/false) * will be created on first start of InitManager @@ -70,6 +72,9 @@ public class InitManager { protected ConfigRepository configRepository; protected BundleContext bundleContext; + // used when updating to avoid multiple extra initializations + protected boolean skipAll = false; + protected Map> initersToDeps = new HashMap<>(); protected Map> depsToIniters = new HashMap<>(); @@ -201,13 +206,15 @@ public class InitManager { ClassLoader cl = wiring.getClassLoader(); Class clazz; try { - clazz = cl.loadClass(className); - log.info("Loaded class {}", clazz.getName()); - Constructor constructor = clazz.getConstructor(); - Initializer initializer = (Initializer) constructor.newInstance(); - initializer.setBundleContext(bundle.getBundleContext()); - initializer.setInitializerId(id); - initializer.init(); + if (!InitManager.this.skipAll) { + clazz = cl.loadClass(className); + log.info("Loaded class {}", clazz.getName()); + Constructor constructor = clazz.getConstructor(); + Initializer initializer = (Initializer) constructor.newInstance(); + initializer.setBundleContext(bundle.getBundleContext()); + initializer.setInitializerId(id); + initializer.init(); + } InitManager.this.updateById(id, true); this.executed = true; this.notifyDependent(); @@ -254,7 +261,7 @@ public class InitManager { @Override public void inited(Initializer owner) { - log.info("Initializer with id {} notified of successful init via callback"); + log.info("Initializer with id {} notified of successful init via callback", id); InitManager.this.updateById(id, true); this.executed = true; this.notifyDependent(); @@ -344,6 +351,9 @@ public class InitManager { if (!getValueById(this.getClass().getName())){ updateById(this.getClass().getName(), true); } + + this.skipAll = getValueById(PROP_SKIP_ALL); + } protected InitializerMeta createMeta(String initializerMeta, Bundle bundle) { diff --git a/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/InitializerTracker.java b/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/InitializerTracker.java index e1d8abd..d52c8c2 100644 --- a/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/InitializerTracker.java +++ b/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/InitializerTracker.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * init-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/api/AbstractInitializer.java b/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/api/AbstractInitializer.java index 5c4915a..65b17b0 100644 --- a/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/api/AbstractInitializer.java +++ b/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/api/AbstractInitializer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * init-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/api/Initializer.java b/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/api/Initializer.java index 0fd576c..837447e 100644 --- a/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/api/Initializer.java +++ b/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/api/Initializer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * init-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/api/InitializerException.java b/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/api/InitializerException.java index 26d857a..276e41e 100644 --- a/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/api/InitializerException.java +++ b/platform/runtime/core/initializer/init-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/api/InitializerException.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * init-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/pom.xml b/platform/runtime/core/initializer/pom.xml index 459eac5..49d20db 100644 --- a/platform/runtime/core/initializer/pom.xml +++ b/platform/runtime/core/initializer/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime core - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core initializer diff --git a/platform/runtime/core/initializer/storage-initializer/cache/pom.xml b/platform/runtime/core/initializer/storage-initializer/cache/pom.xml index 52582b6..1ff0754 100644 --- a/platform/runtime/core/initializer/storage-initializer/cache/pom.xml +++ b/platform/runtime/core/initializer/storage-initializer/cache/pom.xml @@ -1,12 +1,11 @@ - + 4.0.0 storage-initializer ru.entaxy.esb.platform.runtime.core.initializer - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core.initializer.storage.initializer diff --git a/platform/runtime/core/initializer/storage-initializer/cache/src/main/resources/OSGI-INF/blueprint/camel-contex.xml b/platform/runtime/core/initializer/storage-initializer/cache/src/main/resources/OSGI-INF/blueprint/camel-contex.xml index 92e8d05..6e69676 100644 --- a/platform/runtime/core/initializer/storage-initializer/cache/src/main/resources/OSGI-INF/blueprint/camel-contex.xml +++ b/platform/runtime/core/initializer/storage-initializer/cache/src/main/resources/OSGI-INF/blueprint/camel-contex.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-cache ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/cache/src/main/resources/db/changelog.xml b/platform/runtime/core/initializer/storage-initializer/cache/src/main/resources/db/changelog.xml index 7c6d558..e15a7da 100644 --- a/platform/runtime/core/initializer/storage-initializer/cache/src/main/resources/db/changelog.xml +++ b/platform/runtime/core/initializer/storage-initializer/cache/src/main/resources/db/changelog.xml @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ storage-cache ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/cache/src/main/resources/db/changeset/001-aggregation-table-create.xml b/platform/runtime/core/initializer/storage-initializer/cache/src/main/resources/db/changeset/001-aggregation-table-create.xml index 450191b..cf1ce40 100644 --- a/platform/runtime/core/initializer/storage-initializer/cache/src/main/resources/db/changeset/001-aggregation-table-create.xml +++ b/platform/runtime/core/initializer/storage-initializer/cache/src/main/resources/db/changeset/001-aggregation-table-create.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-cache ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/cache/src/main/resources/db/changeset/002-quartz.xml b/platform/runtime/core/initializer/storage-initializer/cache/src/main/resources/db/changeset/002-quartz.xml index be4e526..5e71947 100644 --- a/platform/runtime/core/initializer/storage-initializer/cache/src/main/resources/db/changeset/002-quartz.xml +++ b/platform/runtime/core/initializer/storage-initializer/cache/src/main/resources/db/changeset/002-quartz.xml @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ storage-cache ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/pom.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/pom.xml index d0cdd4a..4474ad0 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/pom.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/pom.xml @@ -1,12 +1,11 @@ - + 4.0.0 storage-initializer ru.entaxy.esb.platform.runtime.core.initializer - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core.initializer.storage.initializer diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/OSGI-INF/blueprint/camel-contex.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/OSGI-INF/blueprint/camel-contex.xml index 6f2dbe1..58e1afe 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/OSGI-INF/blueprint/camel-contex.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/OSGI-INF/blueprint/camel-contex.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-esb_entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changelog.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changelog.xml index e8f6f8a..19bc08d 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changelog.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changelog.xml @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ storage-esb_entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -36,4 +36,5 @@ + diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/001-storage-table-create.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/001-storage-table-create.xml index c749087..0f321ae 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/001-storage-table-create.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/001-storage-table-create.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-esb_entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/002-service_registry-table-create.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/002-service_registry-table-create.xml index 0dac7d5..17f9dfb 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/002-service_registry-table-create.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/002-service_registry-table-create.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-esb_entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/003-bundle-table-create.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/003-bundle-table-create.xml index 3ef320e..34e0078 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/003-bundle-table-create.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/003-bundle-table-create.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-esb_entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/004-system-table-create.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/004-system-table-create.xml index 87b64ad..dbfb0d0 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/004-system-table-create.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/004-system-table-create.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-esb_entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/005-basic_auth_accounts-table-create.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/005-basic_auth_accounts-table-create.xml index 0de40ca..4424c37 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/005-basic_auth_accounts-table-create.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/005-basic_auth_accounts-table-create.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-esb_entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/006-event_topic-table-create.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/006-event_topic-table-create.xml index d3aca4a..2cccdf2 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/006-event_topic-table-create.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/006-event_topic-table-create.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-esb_entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/007-system_subscription_registry-table-create.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/007-system_subscription_registry-table-create.xml index b9d6c01..20b73e1 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/007-system_subscription_registry-table-create.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/007-system_subscription_registry-table-create.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-esb_entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/008-connector-table-create.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/008-connector-table-create.xml index 9de2163..c6b7048 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/008-connector-table-create.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/008-connector-table-create.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-esb_entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/009-export-allowed-create-table.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/009-export-allowed-create-table.xml index 4e9776d..3396270 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/009-export-allowed-create-table.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/009-export-allowed-create-table.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-esb_entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/010-permission-table-create.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/010-permission-table-create.xml index bd070b1..a5ab391 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/010-permission-table-create.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/010-permission-table-create.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-esb_entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/011-admin-account.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/011-admin-account.xml index ad4735e..dea37de 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/011-admin-account.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/011-admin-account.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-esb_entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/012-alter-version-on-string.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/012-alter-version-on-string.xml index f0be122..de5968c 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/012-alter-version-on-string.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/012-alter-version-on-string.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-esb_entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/013-admin-topic-permission.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/013-admin-topic-permission.xml index 7ad7f35..6902574 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/013-admin-topic-permission.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/013-admin-topic-permission.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-esb_entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/014-alter-tables-topic-subscription.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/014-alter-tables-topic-subscription.xml index 55a8da4..1420598 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/014-alter-tables-topic-subscription.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/014-alter-tables-topic-subscription.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-esb_entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/015-schema-table-create.xml b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/015-schema-table-create.xml index 46f9835..b5f8082 100644 --- a/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/015-schema-table-create.xml +++ b/platform/runtime/core/initializer/storage-initializer/esb_entaxy/src/main/resources/db/changeset/015-schema-table-create.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ storage-esb_entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -81,4 +81,11 @@ + + + + + + diff --git a/platform/runtime/core/initializer/storage-initializer/liquibase-updater/pom.xml b/platform/runtime/core/initializer/storage-initializer/liquibase-updater/pom.xml index dcc778c..f6243ed 100644 --- a/platform/runtime/core/initializer/storage-initializer/liquibase-updater/pom.xml +++ b/platform/runtime/core/initializer/storage-initializer/liquibase-updater/pom.xml @@ -1,11 +1,9 @@ - + storage-initializer ru.entaxy.esb.platform.runtime.core.initializer - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/core/initializer/storage-initializer/liquibase-updater/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/storage/initializer/liquibase/updater/LiquibaseUpdater.java b/platform/runtime/core/initializer/storage-initializer/liquibase-updater/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/storage/initializer/liquibase/updater/LiquibaseUpdater.java index 5b671ba..c89232f 100644 --- a/platform/runtime/core/initializer/storage-initializer/liquibase-updater/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/storage/initializer/liquibase/updater/LiquibaseUpdater.java +++ b/platform/runtime/core/initializer/storage-initializer/liquibase-updater/src/main/java/ru/entaxy/esb/platform/runtime/core/initializer/storage/initializer/liquibase/updater/LiquibaseUpdater.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * liquibase-updater * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/initializer/storage-initializer/pom.xml b/platform/runtime/core/initializer/storage-initializer/pom.xml index 4f835ae..7960726 100644 --- a/platform/runtime/core/initializer/storage-initializer/pom.xml +++ b/platform/runtime/core/initializer/storage-initializer/pom.xml @@ -1,11 +1,9 @@ - + ru.entaxy.esb.platform.runtime.core initializer - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/core/management/blueprint-generator-service/pom.xml b/platform/runtime/core/management/blueprint-generator-service/pom.xml index b05d908..15b6e30 100644 --- a/platform/runtime/core/management/blueprint-generator-service/pom.xml +++ b/platform/runtime/core/management/blueprint-generator-service/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime.core management - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core.management blueprint-generator-service diff --git a/platform/runtime/core/management/blueprint-generator-service/src/main/java/ru/entaxy/platform/core/blueprint/generator/Blueprint.java b/platform/runtime/core/management/blueprint-generator-service/src/main/java/ru/entaxy/platform/core/blueprint/generator/Blueprint.java index f0c6583..e4de60d 100644 --- a/platform/runtime/core/management/blueprint-generator-service/src/main/java/ru/entaxy/platform/core/blueprint/generator/Blueprint.java +++ b/platform/runtime/core/management/blueprint-generator-service/src/main/java/ru/entaxy/platform/core/blueprint/generator/Blueprint.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * blueprint-generator * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/blueprint-generator-service/src/main/java/ru/entaxy/platform/core/blueprint/generator/BlueprintGenerator.java b/platform/runtime/core/management/blueprint-generator-service/src/main/java/ru/entaxy/platform/core/blueprint/generator/BlueprintGenerator.java index a579d20..ef0573e 100644 --- a/platform/runtime/core/management/blueprint-generator-service/src/main/java/ru/entaxy/platform/core/blueprint/generator/BlueprintGenerator.java +++ b/platform/runtime/core/management/blueprint-generator-service/src/main/java/ru/entaxy/platform/core/blueprint/generator/BlueprintGenerator.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * blueprint-generator * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/blueprint-generator-service/src/main/java/ru/entaxy/platform/core/blueprint/generator/BlueprintGeneratorImpl.java b/platform/runtime/core/management/blueprint-generator-service/src/main/java/ru/entaxy/platform/core/blueprint/generator/BlueprintGeneratorImpl.java index d803b3e..bf3e7ae 100644 --- a/platform/runtime/core/management/blueprint-generator-service/src/main/java/ru/entaxy/platform/core/blueprint/generator/BlueprintGeneratorImpl.java +++ b/platform/runtime/core/management/blueprint-generator-service/src/main/java/ru/entaxy/platform/core/blueprint/generator/BlueprintGeneratorImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * blueprint-generator * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/blueprint-generator-service/src/main/resources/ru/entaxy/templates/bridge-profile.ftl b/platform/runtime/core/management/blueprint-generator-service/src/main/resources/ru/entaxy/templates/bridge-profile.ftl index 7a84907..b1a42e0 100644 --- a/platform/runtime/core/management/blueprint-generator-service/src/main/resources/ru/entaxy/templates/bridge-profile.ftl +++ b/platform/runtime/core/management/blueprint-generator-service/src/main/resources/ru/entaxy/templates/bridge-profile.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ blueprint-generator-service ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/blueprint-generator-service/src/main/resources/ru/entaxy/templates/default-route.ftl b/platform/runtime/core/management/blueprint-generator-service/src/main/resources/ru/entaxy/templates/default-route.ftl index 4a7eff6..5ed2eb9 100644 --- a/platform/runtime/core/management/blueprint-generator-service/src/main/resources/ru/entaxy/templates/default-route.ftl +++ b/platform/runtime/core/management/blueprint-generator-service/src/main/resources/ru/entaxy/templates/default-route.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ blueprint-generator-service ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/blueprint-generator-service/src/main/resources/ru/entaxy/templates/profile.ftl b/platform/runtime/core/management/blueprint-generator-service/src/main/resources/ru/entaxy/templates/profile.ftl index 7bf957b..49e0c0d 100644 --- a/platform/runtime/core/management/blueprint-generator-service/src/main/resources/ru/entaxy/templates/profile.ftl +++ b/platform/runtime/core/management/blueprint-generator-service/src/main/resources/ru/entaxy/templates/profile.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ blueprint-generator-service ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/cluster-node-management/pom.xml b/platform/runtime/core/management/cluster-node-management/pom.xml index 3c01146..3c0cd73 100644 --- a/platform/runtime/core/management/cluster-node-management/pom.xml +++ b/platform/runtime/core/management/cluster-node-management/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime.core management - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core.management cluster-node-management diff --git a/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/Attributes.java b/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/Attributes.java index 6f45ef8..d0ea075 100644 --- a/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/Attributes.java +++ b/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/Attributes.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * cluster-node-management * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/Activator.java b/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/Activator.java index 3b991a0..63bd122 100644 --- a/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/Activator.java +++ b/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/Activator.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * cluster-node-management * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/ClusterLocalNodeDataProviderImpl.java b/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/ClusterLocalNodeDataProviderImpl.java index 0dade0a..2b7c16b 100644 --- a/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/ClusterLocalNodeDataProviderImpl.java +++ b/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/ClusterLocalNodeDataProviderImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * cluster-node-management * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/ClusterNodeMBeanImpl.java b/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/ClusterNodeMBeanImpl.java index 38c181d..94e6c73 100644 --- a/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/ClusterNodeMBeanImpl.java +++ b/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/ClusterNodeMBeanImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * cluster-node-management * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/MemberAwareDataProvider.java b/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/MemberAwareDataProvider.java index 6587f53..1e2392f 100644 --- a/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/MemberAwareDataProvider.java +++ b/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/MemberAwareDataProvider.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * cluster-node-management * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/MemberMBeanManager.java b/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/MemberMBeanManager.java index 124f445..6b5c7fe 100644 --- a/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/MemberMBeanManager.java +++ b/platform/runtime/core/management/cluster-node-management/src/main/java/ru/entaxy/esb/platform/core/management/cluster/node/impl/MemberMBeanManager.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * cluster-node-management * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/connection-management/pom.xml b/platform/runtime/core/management/connection-management/pom.xml index b69c7e7..9c2520e 100644 --- a/platform/runtime/core/management/connection-management/pom.xml +++ b/platform/runtime/core/management/connection-management/pom.xml @@ -1,13 +1,11 @@ - + 4.0.0 ru.entaxy.esb.platform.runtime.core management - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core.management @@ -51,6 +49,11 @@ management-core ${project.version} + + ru.entaxy.esb.platform.runtime.base.objects-base + objects-core + ${project.version} + diff --git a/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/ConnectionMBean.java b/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/ConnectionMBean.java index 9067477..8b577e1 100644 --- a/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/ConnectionMBean.java +++ b/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/ConnectionMBean.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connection-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -61,5 +61,10 @@ public interface ConnectionMBean extends RuntimeTypedMBean { * null for blended */ public String getBundleId(); + + /* + * connection label + */ + public String getLabel(); } diff --git a/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/ConnectionsMBean.java b/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/ConnectionsMBean.java index 53e09aa..9aeb2f3 100644 --- a/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/ConnectionsMBean.java +++ b/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/ConnectionsMBean.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connection-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,6 +19,12 @@ */ package ru.entaxy.esb.platform.core.management.connection; +import ru.entaxy.esb.platform.base.management.core.api.MBeanAnnotated; +import ru.entaxy.esb.platform.base.management.core.api.MBeanExportPolicy; +import ru.entaxy.esb.platform.base.management.core.api.Operation; +import ru.entaxy.esb.platform.base.management.core.api.Parameter; + +@MBeanAnnotated(policy = MBeanExportPolicy.ANNOTATION_ENRICH) public interface ConnectionsMBean { public static final String CAPABILITY_NAMESPACE = "entaxy.runtime.connection"; @@ -26,5 +32,9 @@ public interface ConnectionsMBean { public static final String CONNECTIONS_KEY = "category"; public static final String CONNECTIONS_KEY_VALUE = "connections"; - + + @Operation(desc = "Gets connection's configuration") + public String getConnectionConfig( + @Parameter(name = "connectionName", desc = "Connection name") String connectionName) throws Exception; + } diff --git a/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ConnectionMBeanImpl.java b/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ConnectionMBeanImpl.java index e2449a8..ebb7405 100644 --- a/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ConnectionMBeanImpl.java +++ b/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ConnectionMBeanImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connection-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -90,5 +90,10 @@ public class ConnectionMBeanImpl extends StandardMBean implements ConnectionMBea public String getBundleId() { return connection.getBundleId() + ""; } + + @Override + public String getLabel() { + return connection.getLabel(); + } } diff --git a/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ConnectionsMBeanImpl.java b/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ConnectionsMBeanImpl.java index 45c2fb0..7d5037d 100644 --- a/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ConnectionsMBeanImpl.java +++ b/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ConnectionsMBeanImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connection-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,23 +26,21 @@ import java.util.Map; import javax.management.DynamicMBean; import javax.management.MBeanRegistration; import javax.management.NotCompliantMBeanException; -import javax.management.StandardMBean; import org.osgi.framework.BundleContext; import org.osgi.framework.ServiceRegistration; import org.osgi.service.component.ComponentContext; -import org.osgi.service.component.annotations.Activate; -import org.osgi.service.component.annotations.Component; -import org.osgi.service.component.annotations.Deactivate; -import org.osgi.service.component.annotations.ServiceScope; +import org.osgi.service.component.annotations.*; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import ru.entaxy.esb.platform.base.management.core.ManagementCore; import ru.entaxy.esb.platform.base.management.core.Qualifier; +import ru.entaxy.esb.platform.base.management.core.api.AnnotatedMBean; import ru.entaxy.esb.platform.core.management.connection.ConnectionMBean; import ru.entaxy.esb.platform.core.management.connection.ConnectionsMBean; import ru.entaxy.esb.platform.core.management.connection.tracker.DeployedConnectionTracker; +import ru.entaxy.platform.base.objects.EntaxyObjectService; @Component( service = {ConnectionsMBean.class, DynamicMBean.class, MBeanRegistration.class}, @@ -53,7 +51,7 @@ import ru.entaxy.esb.platform.core.management.connection.tracker.DeployedConnect scope = ServiceScope.SINGLETON, immediate = true ) -public class ConnectionsMBeanImpl extends StandardMBean +public class ConnectionsMBeanImpl extends AnnotatedMBean implements ConnectionsMBean, ManagedConnectionsListener { private static final Logger log = LoggerFactory.getLogger(ConnectionsMBeanImpl.class); @@ -64,7 +62,10 @@ public class ConnectionsMBeanImpl extends StandardMBean protected BundleContext bundleContext; protected DeployedConnectionTracker tracker; - + + @Reference(cardinality = ReferenceCardinality.MANDATORY) + EntaxyObjectService entaxyObjectService; + protected static class ManagedConnectionDescriptor { ManagedConnection connection; @@ -124,4 +125,9 @@ public class ConnectionsMBeanImpl extends StandardMBean } } } + + @Override + public String getConnectionConfig(String connectionName) throws Exception { + return entaxyObjectService.findObject(connectionName, "entaxy.runtime.connection").getConfiguration(); + } } diff --git a/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ManagedConnection.java b/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ManagedConnection.java index a958bb5..87584f3 100644 --- a/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ManagedConnection.java +++ b/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ManagedConnection.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connection-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -27,6 +27,7 @@ public class ManagedConnection { protected boolean isShared; protected long bundleId; protected boolean isDeployed; + protected String label; public String getName() { return name; @@ -46,6 +47,9 @@ public class ManagedConnection { public boolean isDeployed() { return isDeployed; } + public String getLabel() { + return label; + } public void setName(String name) { this.name = name; @@ -65,6 +69,9 @@ public class ManagedConnection { public void setDeployed(boolean isDeployed) { this.isDeployed = isDeployed; } + public void setLabel(String label) { + this.label = label; + } public ManagedConnection name(String name) { setName(name); @@ -95,4 +102,9 @@ public class ManagedConnection { setDeployed(deployed); return this; } + + public ManagedConnection label(String label) { + setLabel(label); + return this; + } } diff --git a/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ManagedConnections.java b/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ManagedConnections.java index e3fc8f3..493b346 100644 --- a/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ManagedConnections.java +++ b/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ManagedConnections.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connection-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ManagedConnectionsListener.java b/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ManagedConnectionsListener.java index f507e3a..6898b5a 100644 --- a/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ManagedConnectionsListener.java +++ b/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/impl/ManagedConnectionsListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connection-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/tracker/DeployedConnectionCustomizer.java b/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/tracker/DeployedConnectionCustomizer.java index 75ebad3..97d77d2 100644 --- a/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/tracker/DeployedConnectionCustomizer.java +++ b/platform/runtime/core/management/connection-management/src/main/java/ru/entaxy/esb/platform/core/management/connection/tracker/DeployedConnectionCustomizer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connection-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -65,13 +65,16 @@ public class DeployedConnectionCustomizer implements BundleTrackerCustomizer - + 4.0.0 ru.entaxy.esb.platform.runtime.core management - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core.management diff --git a/platform/runtime/core/management/connection-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/management/connection/api/ConnectionManager.java b/platform/runtime/core/management/connection-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/management/connection/api/ConnectionManager.java index 6de70cd..5d654c8 100644 --- a/platform/runtime/core/management/connection-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/management/connection/api/ConnectionManager.java +++ b/platform/runtime/core/management/connection-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/management/connection/api/ConnectionManager.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connection-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/connection-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/management/connection/impl/ConnectionManagerImpl.java b/platform/runtime/core/management/connection-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/management/connection/impl/ConnectionManagerImpl.java index 71488e6..7529742 100644 --- a/platform/runtime/core/management/connection-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/management/connection/impl/ConnectionManagerImpl.java +++ b/platform/runtime/core/management/connection-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/management/connection/impl/ConnectionManagerImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connection-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/connection-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/management/connection/util/ConnectionManagerUtil.java b/platform/runtime/core/management/connection-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/management/connection/util/ConnectionManagerUtil.java index eb46244..8a178e9 100644 --- a/platform/runtime/core/management/connection-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/management/connection/util/ConnectionManagerUtil.java +++ b/platform/runtime/core/management/connection-manager/src/main/java/ru/entaxy/esb/platform/runtime/core/management/connection/util/ConnectionManagerUtil.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connection-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/connection-manager/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/platform/runtime/core/management/connection-manager/src/main/resources/OSGI-INF/blueprint/blueprint.xml index 2108fb7..0f0e31b 100644 --- a/platform/runtime/core/management/connection-manager/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/platform/runtime/core/management/connection-manager/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ connection-manager ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/node-management/pom.xml b/platform/runtime/core/management/node-management/pom.xml index 8ce1145..7597afc 100644 --- a/platform/runtime/core/management/node-management/pom.xml +++ b/platform/runtime/core/management/node-management/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime.core management - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core.management node-management diff --git a/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/ClusterLocalNodeDataProvider.java b/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/ClusterLocalNodeDataProvider.java index cddb794..790d187 100644 --- a/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/ClusterLocalNodeDataProvider.java +++ b/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/ClusterLocalNodeDataProvider.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * node-management * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/ClusterNodeMBean.java b/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/ClusterNodeMBean.java index 5c0b680..19156cd 100644 --- a/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/ClusterNodeMBean.java +++ b/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/ClusterNodeMBean.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * node-management * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/LocalNodeMBean.java b/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/LocalNodeMBean.java index 441a40c..4a4e269 100644 --- a/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/LocalNodeMBean.java +++ b/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/LocalNodeMBean.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * node-management * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/NodeDataProvider.java b/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/NodeDataProvider.java index 9280d51..18e3d88 100644 --- a/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/NodeDataProvider.java +++ b/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/NodeDataProvider.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * node-management * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/NodeDataProviderAware.java b/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/NodeDataProviderAware.java index 496770f..abe3ed0 100644 --- a/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/NodeDataProviderAware.java +++ b/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/NodeDataProviderAware.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * node-management * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/NodeMBean.java b/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/NodeMBean.java index 6c82b23..db3d366 100644 --- a/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/NodeMBean.java +++ b/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/NodeMBean.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * node-management * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/impl/LocalNodeMBeanImpl.java b/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/impl/LocalNodeMBeanImpl.java index a71a2fc..00c0afc 100644 --- a/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/impl/LocalNodeMBeanImpl.java +++ b/platform/runtime/core/management/node-management/src/main/java/ru/entaxy/esb/platform/core/management/node/impl/LocalNodeMBeanImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * node-management * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/pom.xml b/platform/runtime/core/management/pom.xml index 69cbae5..4eca9e6 100644 --- a/platform/runtime/core/management/pom.xml +++ b/platform/runtime/core/management/pom.xml @@ -1,13 +1,11 @@ - + 4.0.0 ru.entaxy.esb.platform.runtime core - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core diff --git a/platform/runtime/core/management/profile-management-service-adapters/pom.xml b/platform/runtime/core/management/profile-management-service-adapters/pom.xml index c5f847c..a77d4a2 100644 --- a/platform/runtime/core/management/profile-management-service-adapters/pom.xml +++ b/platform/runtime/core/management/profile-management-service-adapters/pom.xml @@ -1,13 +1,11 @@ - + 4.0.0 ru.entaxy.esb.platform.runtime.core management - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core.management diff --git a/platform/runtime/core/management/profile-management-service-adapters/src/main/java/ru/entaxy/esb/platform/core/management/profile/adapters/ConnectorManagerAdapter.java b/platform/runtime/core/management/profile-management-service-adapters/src/main/java/ru/entaxy/esb/platform/core/management/profile/adapters/ConnectorManagerAdapter.java index 9b6f486..f95ce0b 100644 --- a/platform/runtime/core/management/profile-management-service-adapters/src/main/java/ru/entaxy/esb/platform/core/management/profile/adapters/ConnectorManagerAdapter.java +++ b/platform/runtime/core/management/profile-management-service-adapters/src/main/java/ru/entaxy/esb/platform/core/management/profile/adapters/ConnectorManagerAdapter.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management-service-adapters * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/profile-management-service-adapters/src/main/java/ru/entaxy/esb/platform/core/management/profile/adapters/PermissionManagerAdapter.java b/platform/runtime/core/management/profile-management-service-adapters/src/main/java/ru/entaxy/esb/platform/core/management/profile/adapters/PermissionManagerAdapter.java index fffebd8..ccb089e 100644 --- a/platform/runtime/core/management/profile-management-service-adapters/src/main/java/ru/entaxy/esb/platform/core/management/profile/adapters/PermissionManagerAdapter.java +++ b/platform/runtime/core/management/profile-management-service-adapters/src/main/java/ru/entaxy/esb/platform/core/management/profile/adapters/PermissionManagerAdapter.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management-service-adapters * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/profile-management-service-adapters/src/main/java/ru/entaxy/esb/platform/core/management/profile/adapters/ProfileManagerAdapter.java b/platform/runtime/core/management/profile-management-service-adapters/src/main/java/ru/entaxy/esb/platform/core/management/profile/adapters/ProfileManagerAdapter.java index e104930..fc46bc0 100644 --- a/platform/runtime/core/management/profile-management-service-adapters/src/main/java/ru/entaxy/esb/platform/core/management/profile/adapters/ProfileManagerAdapter.java +++ b/platform/runtime/core/management/profile-management-service-adapters/src/main/java/ru/entaxy/esb/platform/core/management/profile/adapters/ProfileManagerAdapter.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management-service-adapters * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,6 +30,8 @@ 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; +import javax.naming.OperationNotSupportedException; + @Component ( service = {ru.entaxy.esb.platform.core.management.profile.api.ProfileManager.class} , immediate = true @@ -86,6 +88,11 @@ public class ProfileManagerAdapter implements ru.entaxy.esb.platform.core.manage 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) diff --git a/platform/runtime/core/management/profile-management/pom.xml b/platform/runtime/core/management/profile-management/pom.xml index bf05e1d..93b9045 100644 --- a/platform/runtime/core/management/profile-management/pom.xml +++ b/platform/runtime/core/management/profile-management/pom.xml @@ -1,13 +1,11 @@ - + 4.0.0 ru.entaxy.esb.platform.runtime.core management - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core.management @@ -64,6 +62,11 @@ system-api ${project.version} + + ru.entaxy.esb.platform.runtime.base.objects-base + objects-core + ${project.version} + diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/ConnectorMBean.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/ConnectorMBean.java index 6facb19..8e86839 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/ConnectorMBean.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/ConnectorMBean.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,7 +55,16 @@ public interface ConnectorMBean extends BundleAwareMBean, RuntimeTypedMBean { @Attribute(desc = "Connector registered name used in registry") public String getRegisteredName(); - + + @Attribute(desc = "Connector system") + public String getSystem(); + + @Attribute(desc = "Connector classifier") + public String getClassifier(); + + @Attribute(desc = "Connector direction") + public String getDirection(); + @Operation(desc = "Starts the connector") public void start() throws Exception; diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/ConnectorsMBean.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/ConnectorsMBean.java index a962c0d..20c3f90 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/ConnectorsMBean.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/ConnectorsMBean.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/DefaultRouteMBean.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/DefaultRouteMBean.java index 50f4f1e..56e5188 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/DefaultRouteMBean.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/DefaultRouteMBean.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,9 +20,10 @@ package ru.entaxy.esb.platform.core.management.profile; import ru.entaxy.esb.platform.base.management.core.Qualifier; -import ru.entaxy.esb.platform.base.management.core.api.RuntimeTypedMBean; +import ru.entaxy.esb.platform.base.management.core.api.*; import ru.entaxy.esb.platform.base.management.core.utils.BundleAwareMBean; +@MBeanAnnotated(policy = MBeanExportPolicy.ANNOTATION_ENRICH) public interface DefaultRouteMBean extends BundleAwareMBean, RuntimeTypedMBean { public static interface Helper { @@ -41,5 +42,8 @@ public interface DefaultRouteMBean extends BundleAwareMBean, RuntimeTypedMBean { public static final String ROUTE_KEY_VALUE_DEFAULT = "default"; public boolean isDefault(); - + + @Operation(desc = "Gets route's configuration") + public String doGetRouteConfig() throws Exception; + } diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/ProfileMBean.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/ProfileMBean.java index 43ee28a..8ef6d92 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/ProfileMBean.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/ProfileMBean.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -80,7 +80,11 @@ public interface ProfileMBean extends BundleAwareMBean, RuntimeTypedMBean { @Operation(desc = "Stops connector in profile") public void stopConnector( @Parameter(name = "connectorName", desc = "Connector name") String connectorName) throws Exception; - + + @Operation(desc = "Gets connector's configuration") + public String getConnectorConfig( + @Parameter(name = "connectorName", desc = "Connector name") String connectorName) throws Exception; + @Operation(desc = "Creates account for this system", impact = MBeanOperationInfo.ACTION) public void createAccount( @Parameter(name = "login", desc = "Login") String login diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/ProfilesMBean.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/ProfilesMBean.java index 2c53586..003de3e 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/ProfilesMBean.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/ProfilesMBean.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/RoutesMBean.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/RoutesMBean.java index be27eb1..5761534 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/RoutesMBean.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/RoutesMBean.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/api/ConnectorManager.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/api/ConnectorManager.java index aca15ba..1493f6c 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/api/ConnectorManager.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/api/ConnectorManager.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/api/PermissionManager.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/api/PermissionManager.java index 4b22d46..a858d36 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/api/PermissionManager.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/api/PermissionManager.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/api/ProfileManager.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/api/ProfileManager.java index 8c02a4f..d8a7622 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/api/ProfileManager.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/api/ProfileManager.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,7 +29,10 @@ public interface ProfileManager { @Parameter(desc = "Profile ID", name = "id") String id, @Parameter(desc = "System name", name = "name") String name, @Parameter(desc = "Description", name = "description") String description) throws Exception; - + + @Operation(desc = "Get profile configuration") + public String getProfileConfig(@Parameter(desc = "Profile ID or system name", name = "idOrName") String idOrName) throws Exception; + @Operation(desc = "Start profile") public void startProfile(@Parameter(desc = "Profile ID or system name", name = "idOrName") String idOrName) throws Exception; diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/DeployedProfileCustomizer.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/DeployedProfileCustomizer.java index 8f1fddb..a48fc79 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/DeployedProfileCustomizer.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/DeployedProfileCustomizer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ManagedProfile.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ManagedProfile.java index 3f53398..c7fcc79 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ManagedProfile.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ManagedProfile.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ManagedProfilesListener.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ManagedProfilesListener.java index 3249e2a..b7cd636 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ManagedProfilesListener.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ManagedProfilesListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ProfileHelper.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ProfileHelper.java index d41cbe7..b88fb78 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ProfileHelper.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ProfileHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ProfileHelperImpl.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ProfileHelperImpl.java index 3d3b97d..e37956e 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ProfileHelperImpl.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ProfileHelperImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -69,6 +69,11 @@ public class ProfileHelperImpl implements ProfileHelper { public void createProfile(String id, String name, String description) throws Exception { throw new OperationNotSupportedException(EXPLANATION); } + + @Override + public String getProfileConfig(String idOrName) throws Exception { + throw new OperationNotSupportedException(EXPLANATION); + } }; } @@ -101,6 +106,11 @@ public class ProfileHelperImpl implements ProfileHelper { getEffectiveProfileManager().createProfile(id, name, description); } + @Override + public String getProfileConfig(String idOrName) throws Exception { + return getEffectiveProfileManager().getProfileConfig(idOrName); + } + @Override public void startProfile(String idOrName) throws Exception { getEffectiveProfileManager().startProfile(idOrName); diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ProfileMBeanImpl.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ProfileMBeanImpl.java index f35c7fb..66e1b58 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ProfileMBeanImpl.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ProfileMBeanImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -110,6 +110,11 @@ public class ProfileMBeanImpl extends BundleAwareMBeanImpl getAllowedTargets() { try { diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ProfilesMBeanImpl.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ProfilesMBeanImpl.java index 908e080..06492b4 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ProfilesMBeanImpl.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/ProfilesMBeanImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -113,7 +113,7 @@ public class ProfilesMBeanImpl extends AnnotatedMBean routeTracker = BundleTrackerUtils.>createBuilder() .customizer( (new DeployedDefaultRouteCustomizer()) - .listener(new ManagedRoutesListener(bundleContext)) + .listener(new ManagedRoutesListener(bundleContext, helpers)) ) .addFilter( (new BundleCapabilityFilter()).namespace(DefaultRouteMBean.CAPABILITY_NAMESPACE) @@ -153,6 +153,11 @@ public class ProfilesMBeanImpl extends AnnotatedMBean this.helpers.profileHelper.createProfile(id, name, description); } + @Override + public String getProfileConfig(String idOrName) throws Exception { + return this.helpers.entaxyObjectService.findObject(idOrName, "entaxy.runtime.profile").getConfiguration(); + } + @Override public void startProfile(String idOrName) throws Exception { this.helpers.profileHelper.startProfile(idOrName); diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/connector/ConnectorHelper.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/connector/ConnectorHelper.java index a967168..02e5c64 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/connector/ConnectorHelper.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/connector/ConnectorHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/connector/ConnectorHelperImpl.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/connector/ConnectorHelperImpl.java index 42f9911..6b3775d 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/connector/ConnectorHelperImpl.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/connector/ConnectorHelperImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/connector/ConnectorMBeanImpl.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/connector/ConnectorMBeanImpl.java index b43e208..ab726ec 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/connector/ConnectorMBeanImpl.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/connector/ConnectorMBeanImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,7 +55,22 @@ public class ConnectorMBeanImpl extends BundleAwareMBeanImpl implements DefaultRouteMBean { - - - public DefaultRouteMBeanImpl(BundleContext bundleContext, ManagedRoute managedRoute) throws NotCompliantMBeanException { + + Helpers helpers; + + public DefaultRouteMBeanImpl(BundleContext bundleContext, ManagedRoute managedRoute, Helpers helpers) throws NotCompliantMBeanException { super(DefaultRouteMBean.class, managedRoute); this.bundleContext = bundleContext; this.managedObject = managedRoute; + this.helpers = helpers; } @Override public boolean isDefault() { return this.managedObject.isDefault(); } - + + @Override + public String doGetRouteConfig() throws Exception { + return this.helpers.entaxyObjectService.findObject(managedObject.getName(), "entaxy.runtime.default-route").getConfiguration(); + } } diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/route/DeployedDefaultRouteCustomizer.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/route/DeployedDefaultRouteCustomizer.java index b360fcd..59548f5 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/route/DeployedDefaultRouteCustomizer.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/route/DeployedDefaultRouteCustomizer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -41,12 +41,17 @@ public class DeployedDefaultRouteCustomizer extends ExtendedBundleTrackerCustomi capabilities = new ArrayList<>(); List result = new ArrayList<>(); for (BundleCapability capability: capabilities) { - Object val = capability.getAttributes().get("name"); + Object val = capability.getAttributes().get("objectId"); // fixme this is temporary solution String name = val==null?"":val.toString(); if (!CommonUtils.isValid(name)) continue; + val = capability.getAttributes().get("system"); + String profile = val==null?"":val.toString(); + if (!CommonUtils.isValid(profile)) + continue; ManagedRoute mr = (new ManagedRoute()) .name(name) + .profile(profile) .defaultRoute(true); enrich(bundle, event, filterResults, mr); result.add(mr); diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/route/ManagedRoute.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/route/ManagedRoute.java index 12ac1c2..05852be 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/route/ManagedRoute.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/route/ManagedRoute.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,7 +26,9 @@ public class ManagedRoute extends BundleAwareManagedObjectImpl { protected boolean isDefault; protected String name; - + + protected String profile; + public boolean isDefault() { return isDefault; } @@ -52,5 +54,17 @@ public class ManagedRoute extends BundleAwareManagedObjectImpl { setName(name); return this; } - + + public String getProfile() { + return profile; + } + + public void setProfile(String profile) { + this.profile = profile; + } + + public ManagedRoute profile(String profile) { + setProfile(profile); + return this; + } } diff --git a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/route/ManagedRoutesListener.java b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/route/ManagedRoutesListener.java index f838d17..727daaa 100644 --- a/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/route/ManagedRoutesListener.java +++ b/platform/runtime/core/management/profile-management/src/main/java/ru/entaxy/esb/platform/core/management/profile/impl/route/ManagedRoutesListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-management * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -28,13 +28,17 @@ import org.slf4j.LoggerFactory; import ru.entaxy.esb.platform.base.management.core.utils.ManagedObjectsListener; import ru.entaxy.esb.platform.core.management.profile.DefaultRouteMBean; +import ru.entaxy.esb.platform.core.management.profile.impl.helper.Helpers; public class ManagedRoutesListener extends ManagedObjectsListener, ManagedRoute, DefaultRouteMBean, DefaultRouteMBeanImpl> { private static final Logger log = LoggerFactory.getLogger(ManagedRoutesListener.class); - - public ManagedRoutesListener(BundleContext bundleContext) { + + protected Helpers helpers; + + public ManagedRoutesListener(BundleContext bundleContext, Helpers helpers) { super(bundleContext, DefaultRouteMBean.class); + this.helpers = helpers; } @Override @@ -51,7 +55,7 @@ public class ManagedRoutesListener extends ManagedObjectsListener ru.entaxy.esb.platform.runtime.core object-producing - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core.object-producing object-producer-api diff --git a/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/EntaxyProducer.java b/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/EntaxyProducer.java index 7aa7b5f..e424898 100644 --- a/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/EntaxyProducer.java +++ b/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/EntaxyProducer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/EntaxyProducerService.java b/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/EntaxyProducerService.java index 342bc68..6aed7a6 100644 --- a/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/EntaxyProducerService.java +++ b/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/EntaxyProducerService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -27,10 +27,27 @@ import ru.entaxy.platform.base.objects.factory.EntaxyFactory; public interface EntaxyProducerService { + public static interface DIRECTIVES { + + String LIFECYCLE = "@LIFECYCLE"; + + /* + * usage: {"@SKIP": ['command1', 'command2-', 'command3+']} + * where + * 'command1' - skip command1 + * 'command2-' - skip ALL BEFORE command2 + * 'command3+' - skip ALL AFTER command3 + */ + String SKIP = "@SKIP"; + + }; + public static interface INSTRUCTIONS { - public static final String PRINT_OUTPUT = "printOutput"; - public static final String SKIP = "skip"; + String PRINT_OUTPUT = "printOutput"; + String SKIP = "skip"; + String MAX_COUNT = "maxCount"; + String CURRENT_ITERATION = "currentCount"; public static interface ARTIFACT { diff --git a/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/EntaxyProducerUtils.java b/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/EntaxyProducerUtils.java index 7b794aa..66b5f3a 100644 --- a/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/EntaxyProducerUtils.java +++ b/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/EntaxyProducerUtils.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producer-api * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,8 +20,11 @@ package ru.entaxy.platform.core.producer.api; import com.google.gson.Gson; +import com.google.gson.JsonArray; import com.google.gson.JsonObject; +import ru.entaxy.platform.base.objects.EntaxyObjectService; + public class EntaxyProducerUtils { protected static Gson sharedGson = new Gson(); @@ -41,6 +44,14 @@ public class EntaxyProducerUtils { protected InstructionsBuilder(JsonObject jsonObject) { super(jsonObject); } + + public InstructionsBuilder lifecycle(String lifecycle) { + if (!instructionsJson.has(EntaxyProducerService.DIRECTIVES.LIFECYCLE)) + instructionsJson.add(EntaxyProducerService.DIRECTIVES.LIFECYCLE, new JsonArray()); + JsonArray lc = instructionsJson.get(EntaxyProducerService.DIRECTIVES.LIFECYCLE).getAsJsonArray(); + lc.add(lifecycle); + return this; + } public CommandBuilder command(String commandName) { if (!instructionsJson.has(commandName)) diff --git a/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/EntaxyWrappedFactory.java b/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/EntaxyWrappedFactory.java index d31247e..85f63dc 100644 --- a/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/EntaxyWrappedFactory.java +++ b/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/EntaxyWrappedFactory.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/ExecutionPlan.java b/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/ExecutionPlan.java index 18328d6..6e6f232 100644 --- a/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/ExecutionPlan.java +++ b/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/ExecutionPlan.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/ExecutionTask.java b/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/ExecutionTask.java index d2c0d70..3a5e36d 100644 --- a/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/ExecutionTask.java +++ b/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/ExecutionTask.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/ProducerResult.java b/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/ProducerResult.java index 9aad2d6..70b54e5 100644 --- a/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/ProducerResult.java +++ b/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/ProducerResult.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/ProducingCommandExecutor.java b/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/ProducingCommandExecutor.java index b0bcac5..590c1a1 100644 --- a/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/ProducingCommandExecutor.java +++ b/platform/runtime/core/object-producing/object-producer-api/src/main/java/ru/entaxy/platform/core/producer/api/ProducingCommandExecutor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -23,10 +23,12 @@ import java.util.List; import java.util.Map; public interface ProducingCommandExecutor { + public String getId(); public List getRequiredPredecessors(); public List getDescendants(); public List> getAcceptedInputClasses(); public List> getProducedOutputClasses(); public ProducerResult execute(ProducerResult currentResult, Map parameters); + } diff --git a/platform/runtime/core/object-producing/object-producer-core/pom.xml b/platform/runtime/core/object-producing/object-producer-core/pom.xml index b5429a1..e40cb91 100644 --- a/platform/runtime/core/object-producing/object-producer-core/pom.xml +++ b/platform/runtime/core/object-producing/object-producer-core/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime.core object-producing - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core.object-producing object-producer-core @@ -28,5 +28,37 @@ artifact-management ${project.version} + + org.apache.camel + camel-core + + + + + + org.codehaus.mojo + build-helper-maven-plugin + + + attach-artifacts + package + + attach-artifact + + + + + src/main/config/producing.lifecycles.json + json + producing.lifecycles + + + + + + + + + \ No newline at end of file diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/AbstractCommandExecutor.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/AbstractCommandExecutor.java index e15d3ac..c3dfc97 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/AbstractCommandExecutor.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/AbstractCommandExecutor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -28,16 +28,18 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import ru.entaxy.platform.core.producer.api.EntaxyProducerService; +import ru.entaxy.platform.core.producer.api.EntaxyProducerService.INSTRUCTIONS; import ru.entaxy.platform.core.producer.api.ProducerResult; import ru.entaxy.platform.core.producer.api.ProducerResult.CommandResult; import ru.entaxy.platform.core.producer.api.ProducingCommandExecutor; +import ru.entaxy.platform.core.producer.executor.support.AbstractPrintOutputSupport; -public abstract class AbstractCommandExecutor implements ProducingCommandExecutor { +public abstract class AbstractCommandExecutor extends AbstractPrintOutputSupport + implements ProducingCommandExecutor { private static final Logger log = LoggerFactory.getLogger(AbstractCommandExecutor.class); - public static String SKIP_INSTRUSTION = "skip"; - public static String PRINT_OUTPUT_INSTRUSTION = "printOutput"; + public static int DEFAULT_MAX_COUNT = 15; protected EntaxyProducerService entaxyProducerService; @@ -47,8 +49,6 @@ public abstract class AbstractCommandExecutor implements ProducingCommandExecuto protected List> acceptedInputClasses = new ArrayList<>(); protected List> producedOutputClasses = new ArrayList<>(); - protected boolean isPrintOutput = false; - protected Map instructions; protected AbstractCommandExecutor(EntaxyProducerService entaxyProducerService) { @@ -113,39 +113,69 @@ public abstract class AbstractCommandExecutor implements ProducingCommandExecuto CommandResult cr = new CommandResult(getId()); this.instructions = instructions; setPrintOutput(instructions); - if (isSkipped(instructions)) + int maxCount = getMaxCount(instructions); + int currentCount = getCurrentCount(instructions); + printOutput("\n\n\t== " + getId().toUpperCase() + " == #" + currentCount + " of " + maxCount + " ==\n"); + if (isSkipped(instructions)) { cr.skipped = true; - else + printOutput(" :: SKIPPED "); + } else { try { cr.result = doExecute(currentResult, cr, instructions); } catch (Exception e) { log.error("Error executing [" + getId() + "]", e); cr.exception(e).result(false); } + if (currentCount >= maxCount) { + instructions.put(INSTRUCTIONS.SKIP, true); + printOutput(" !! Max iteration count of [" + maxCount + "] is reached" + + "\n futher iterations will be skipped "); + } else { + increaseCurrentCount(instructions); + } + } + printOutput("\n\n\t== /" + getId().toUpperCase() + " == "); currentResult.addCommandResult(cr); return currentResult; } - - protected void setPrintOutput(Map parameters) { - if (parameters.containsKey(PRINT_OUTPUT_INSTRUSTION)) { - Object val = parameters.get(PRINT_OUTPUT_INSTRUSTION); - if (val == null) - return; - if (val instanceof Boolean) - this.isPrintOutput = (Boolean)val; - } - } - protected void printOutput(String message) { - if (this.isPrintOutput) - // OUTPUT TO CONSOLE - System.out.println(message); + protected int getMaxCount(Map parameters) { + int result = DEFAULT_MAX_COUNT; + if (parameters.containsKey(INSTRUCTIONS.MAX_COUNT)) { + Object val = parameters.get(INSTRUCTIONS.MAX_COUNT); + try { + result = ((Number)val).intValue(); + } catch (Exception e) { + parameters.put(INSTRUCTIONS.MAX_COUNT, DEFAULT_MAX_COUNT); + } + } + return result; + } + + protected int getCurrentCount(Map parameters) { + int result = 1; + if (parameters.containsKey(INSTRUCTIONS.CURRENT_ITERATION)) { + Object val = parameters.get(INSTRUCTIONS.CURRENT_ITERATION); + try { + result = (Integer)val; + } catch (Exception e) { + parameters.put(INSTRUCTIONS.CURRENT_ITERATION, 1); + } + } + return result; + } + + protected int increaseCurrentCount(Map parameters) { + int currentCount = getCurrentCount(parameters); + currentCount++; + parameters.put(INSTRUCTIONS.CURRENT_ITERATION, currentCount); + return getCurrentCount(parameters); } protected boolean isSkipped(Map parameters) { - if (!parameters.containsKey(SKIP_INSTRUSTION)) + if (!parameters.containsKey(INSTRUCTIONS.SKIP)) return false; - Object obj = parameters.get(SKIP_INSTRUSTION); + Object obj = parameters.get(INSTRUCTIONS.SKIP); if (obj instanceof Boolean) return (Boolean)obj; if (obj instanceof String) diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/CommandExecutor.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/CommandExecutor.java index 6899e9d..8b772b7 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/CommandExecutor.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/CommandExecutor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/CommandInstructions.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/CommandInstructions.java index a51b08e..a4f3f23 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/CommandInstructions.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/CommandInstructions.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producer-core * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/ProducingExecutor.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/ProducingExecutor.java index f8bfd86..76fe93c 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/ProducingExecutor.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/ProducingExecutor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,10 +26,12 @@ import java.util.Iterator; import java.util.LinkedList; import java.util.List; import java.util.Map; +import java.util.Map.Entry; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import com.google.gson.JsonArray; import com.google.gson.JsonElement; import com.google.gson.JsonObject; @@ -37,6 +39,7 @@ import ru.entaxy.platform.base.support.CommonUtils; import ru.entaxy.platform.base.support.DependencySorter; import ru.entaxy.platform.base.support.JSONUtils; import ru.entaxy.platform.core.producer.api.EntaxyProducerService; +import ru.entaxy.platform.core.producer.api.EntaxyProducerService.INSTRUCTIONS; import ru.entaxy.platform.core.producer.api.ExecutionPlan; import ru.entaxy.platform.core.producer.api.ExecutionPlan.ExecutionPlanUpdate; import ru.entaxy.platform.core.producer.api.ExecutionPlan.ExecutionPlanUpdate.OPERATIONS; @@ -48,6 +51,8 @@ public class ProducingExecutor { private static final Logger log = LoggerFactory.getLogger(ProducingExecutor.class); + public static final String DIRECTIVE_SKIP = EntaxyProducerService.DIRECTIVES.SKIP; + protected static final String DEFAULT_EXECUTION_PLAN = "{'validate':{}}"; protected static final String ANY_COMMAND = "*"; @@ -103,8 +108,24 @@ public class ProducingExecutor { Map taskMap = new HashMap<>(); Map anyCommandInstructions = new HashMap<>(); - if (executionPlanJSON.has(ANY_COMMAND)) - anyCommandInstructions = JSONUtils.element2map(executionPlanJSON.get(ANY_COMMAND)); + JsonObject directives = new JsonObject(); + if (executionPlanJSON.has(ANY_COMMAND)) { + JsonElement anyCommandElement = executionPlanJSON.get(ANY_COMMAND).deepCopy(); + if (anyCommandElement.isJsonObject()) { + JsonObject anyCommandObject = anyCommandElement.getAsJsonObject(); + List toRemove = new ArrayList<>(); + for (Entry entry: anyCommandObject.entrySet()) + if (entry.getKey().startsWith("@")) { + directives.add(entry.getKey(), entry.getValue().deepCopy()); + toRemove.add(entry.getKey()); + } + // remove directives + for (String s: toRemove) + anyCommandObject.remove(s); + } + anyCommandInstructions = JSONUtils.element2map(anyCommandElement); + } + List neededCommands = new ArrayList<>(); for (String id: executionPlanJSON.keySet()) { @@ -134,7 +155,7 @@ public class ProducingExecutor { log.debug("Adding command [{}]", s); newCommandsToCheck.add(s); neededCommands.add(s); - if (createExecutionTask(taskMap, s, anyCommandInstructions).executor == null) { + if (createExecutionTask(taskMap, s, new HashMap<>(anyCommandInstructions)).executor == null) { log.error("Command [{}] not found", s); throw new Exception("Command not found: " + s); } @@ -168,7 +189,53 @@ public class ProducingExecutor { }); executionPlan.tasks = sorted; - + applyDirectives(directives); + } + + protected void applyDirectives(JsonObject directives) { + // apply @SKIP + if (directives.has(DIRECTIVE_SKIP)) { + JsonElement je = directives.get(DIRECTIVE_SKIP); + List toSkip = new ArrayList<>(); + if (je.isJsonPrimitive()) + toSkip.add(je.getAsString()); + if (je.isJsonArray()) { + JsonArray ja = je.getAsJsonArray(); + for (int i=0; i instructions) throws Exception { - log.info("Executing command [{}]", getId()); + log.debug("Executing command [{}]", getId()); JsonObject jo = currentResult.findResultObject(JsonObject.class); - printOutput("\n\n\t== ANALYZE == \n\n"); printOutput("\n\tIncoming JSON ::\n\n"); printOutput(jo.toString()); @@ -61,7 +60,7 @@ public class Analyze extends AbstractCommandExecutor { printOutput("\n\tObjectModel ::\n\n"); for (FactoredObject fo: om.objects) - printOutput("Object :: [" + fo.getObjectId() + "/" + fo.factoryId + ":" + fo.getObjectType() + "]"); + printOutput("Object :: [" + fo.getObjectId() + "/" + fo.factoryId + ":" + fo.getObjectType() + "] :: " + fo.getOutputType()); for (FactoredObjectRef fo: om.refs) printOutput("Reference :: [" + fo.definedIn.getObjectId() + " -> " + fo.getTargetId() + "; isLink=" + fo.isLink() diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Build.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Build.java index e18245b..4622193 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Build.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Build.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,27 +21,21 @@ package ru.entaxy.platform.core.producer.executor.commands; import java.util.Map; -import org.osgi.framework.Constants; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import ru.entaxy.esb.platform.runtime.base.connecting.generator.Generated; -import ru.entaxy.platform.base.support.CommonUtils; -import ru.entaxy.platform.core.artifact.Artifact; -import ru.entaxy.platform.core.artifact.ArtifactManifest; -import ru.entaxy.platform.core.artifact.Artifacts; -import ru.entaxy.platform.core.artifact.Manifested; -import ru.entaxy.platform.core.artifact.capabilities.ManifestCapabilityHelper; -import ru.entaxy.platform.base.objects.EntaxyObject.FIELDS; -import ru.entaxy.platform.base.objects.EntaxyObject.HEADERS; import ru.entaxy.platform.core.producer.api.EntaxyProducerService; import ru.entaxy.platform.core.producer.api.ProducerResult; import ru.entaxy.platform.core.producer.api.ProducerResult.CommandResult; import ru.entaxy.platform.core.producer.executor.AbstractCommandExecutor; import ru.entaxy.platform.core.producer.executor.CommandExecutor; -import ru.entaxy.platform.core.producer.executor.generationmodel.GeneratedHeaders; +import ru.entaxy.platform.core.producer.executor.builder.BuiltObject; +import ru.entaxy.platform.core.producer.executor.builder.BuiltObjectList; +import ru.entaxy.platform.core.producer.executor.builder.ObjectBuilder; import ru.entaxy.platform.core.producer.executor.generationmodel.GeneratedList; -import ru.entaxy.platform.core.producer.executor.support.ArtifactList; +import ru.entaxy.platform.core.producer.executor.support.ObjectSupportRegistry; +import ru.entaxy.platform.core.producer.executor.support.PrintOutputSupport; @CommandExecutor(id = "build", predecessors = {"generate"}) public class Build extends AbstractCommandExecutor { @@ -55,103 +49,38 @@ public class Build extends AbstractCommandExecutor { @Override protected boolean doExecute(ProducerResult currentResult, CommandResult commandResult, Map instructions) throws Exception { - printOutput("\n\t == BUILDING ==\n"); GeneratedList generated = currentResult.findResultObject(GeneratedList.class); if (generated == null) { - log.info("Nothing to generate"); + log.info("Nothing to build"); return true; } - ArtifactList artifactList = new ArtifactList(); + BuiltObjectList resultList = new BuiltObjectList(); for (Generated g: generated) { if (g == null) continue; - Artifact artifact = Artifacts.fromGenerated(g); - if ((artifact == null) || Artifact.ARTIFACT_CATEGORY_UNKNOWN.equals(artifact.getCategory()) - || !CommonUtils.isValid(artifact.getCategory())) { - log.info("Artifact is not buildable"); + + printOutput(" = Building for generated of type [" + g.getType() + "]" ); + + ObjectBuilder builder = ObjectSupportRegistry.getInstance().findBuilder(g); + if (builder == null) { + log.warn("ObjectBuilder not found for generated object of type [{}]", g.getType()); + printOutput(" :: ObjectBuilder not found"); continue; } - log.info("Built artifact of category [{}]", artifact.getCategory()); - Map headers = GeneratedHeaders.getHeaders(g.getProperties()).getAsStringMap(); - String mainObjectValue = headers.get(HEADERS.MAIN_OBJECT); - if (!CommonUtils.isValid(mainObjectValue)) - throw new Exception("Main object not found"); - String[] mainObjectData = mainObjectValue.split(":"); - if (mainObjectData.length<2) - throw new Exception("Main object not complete: [" + mainObjectValue + "]"); + printOutput(" :: ObjectBuilder is: " + builder.getClass().getName()); + BuiltObject result = builder.build(g, instructions); + if (result != null) { + resultList.add(result); + printOutput(" :: Result is: " + result.getClass().getName()); + } else + printOutput(" :: Result is: NULL"); - String versionPolicy = g.getProperties().getOrDefault( - EntaxyProducerService.INSTRUCTIONS.ARTIFACT.VERSION_POLICY, - instructions.getOrDefault( - EntaxyProducerService.INSTRUCTIONS.ARTIFACT.VERSION_POLICY - , "")) - .toString(); - String timestamp = g.getProperties().getOrDefault( - EntaxyProducerService.INSTRUCTIONS.ARTIFACT.TIMESTAMP, - instructions.getOrDefault( - EntaxyProducerService.INSTRUCTIONS.ARTIFACT.TIMESTAMP - , "")) - .toString(); - artifact.getCoordinates() - .groupId(mainObjectData[1]) - .artifactId(mainObjectData[0]) - .version("1") - .versionPolicy(versionPolicy) - .timestamp(timestamp); - - if (artifact instanceof Manifested) { - ArtifactManifest manifest = ((Manifested)artifact).getManifest(); - manifest.getCustomAttributes().putAll(headers); - - // Generate provided capabilities for every included object - ManifestCapabilityHelper helper = new ManifestCapabilityHelper(manifest); - - String objectsValue = headers.getOrDefault(HEADERS.GENERATED_OBJECTS, ""); - if (CommonUtils.isValid(objectsValue)) { - String[] objects = objectsValue.split(","); - - for (int i=0; i attributes = null; - if (g.getProperties().containsKey(FIELDS.FIELDS_TO_PUBLISH)) { - Object map = g.getProperties().get(FIELDS.FIELDS_TO_PUBLISH); - if (map != null) { - attributes = (Map)((Map)map).get(objectId); - } - } - helper.provideCapability(objectType).attributes(attributes); - } - - helper.save(); - - } - } - artifact.getProperties().putAll(g.getProperties()); - // TODO get value from manifest - // ArtifactManifest must be improved to provide read access to all attributes - if (!artifact.getProperties().containsKey(Constants.BUNDLE_SYMBOLICNAME)) { - artifact.getProperties().put(Constants.BUNDLE_SYMBOLICNAME - , artifact.getCoordinates().getGroupId() - + "." + artifact.getCoordinates().getArtifactId()); - } - artifactList.add(artifact); - printOutput("\n\t == " + artifact.getCoordinates().toString() + " ==\n"); - printOutput(new String(artifact.asByteArray())); - printOutput("\n\t == \n"); } - commandResult.resultObject(artifactList); + commandResult.resultObject(resultList); return true; } diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Deploy.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Deploy.java index c51259d..72f3c1f 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Deploy.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Deploy.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,23 +20,27 @@ package ru.entaxy.platform.core.producer.executor.commands; import java.util.Map; -import java.util.stream.Collectors; -import ru.entaxy.platform.core.artifact.Artifact; -import ru.entaxy.platform.core.artifact.DeployedArtifact; -import ru.entaxy.platform.core.artifact.service.ArtifactService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import ru.entaxy.platform.core.producer.api.EntaxyProducerService; import ru.entaxy.platform.core.producer.api.ProducerResult; import ru.entaxy.platform.core.producer.api.ProducerResult.CommandResult; import ru.entaxy.platform.core.producer.executor.AbstractCommandExecutor; import ru.entaxy.platform.core.producer.executor.CommandExecutor; -import ru.entaxy.platform.core.producer.executor.support.ArtifactList; -import ru.entaxy.platform.core.producer.executor.support.ArtifactsHelper; -import ru.entaxy.platform.core.producer.executor.support.DeployedArtifactList; +import ru.entaxy.platform.core.producer.executor.builder.BuiltObject; +import ru.entaxy.platform.core.producer.executor.builder.BuiltObjectList; +import ru.entaxy.platform.core.producer.executor.deployer.DeployedObject; +import ru.entaxy.platform.core.producer.executor.deployer.DeployedObjectList; +import ru.entaxy.platform.core.producer.executor.deployer.ObjectDeployer; +import ru.entaxy.platform.core.producer.executor.support.ObjectSupportRegistry; @CommandExecutor(id = "deploy", predecessors = {"build"}) public class Deploy extends AbstractCommandExecutor { + private static final Logger log = LoggerFactory.getLogger(Deploy.class); + public static final String DEPLOY_LOCAL_INSTRUCTION = "deployLocal"; public Deploy(EntaxyProducerService entaxyProducerService) { @@ -46,32 +50,39 @@ public class Deploy extends AbstractCommandExecutor { @Override protected boolean doExecute(ProducerResult currentResult, CommandResult commandResult, Map instructions) throws Exception { - - boolean deployLocal = false; - - Object deployLocalValue = instructions.get(DEPLOY_LOCAL_INSTRUCTION); - if (deployLocalValue != null) - if (deployLocalValue instanceof Boolean) - deployLocal = (Boolean)deployLocalValue; - - ArtifactList artifactList = currentResult.findResultObject(ArtifactList.class); - DeployedArtifactList deployedArtifactList = new DeployedArtifactList(); - - ArtifactService artifactService = ArtifactsHelper.getInstance().getArtifactService(); - - for (Artifact artifact: artifactList) { - DeployedArtifact da = deployLocal - ?artifactService.deployLocal(artifact) - :artifactService.deployShared(artifact); - deployedArtifactList.add(da); - } - printOutput("\n\n\t== DEPLOY ==\n"); - printOutput("DEPLOYED: [" - + deployedArtifactList.stream().map(da->da.getLocation()).collect(Collectors.joining(",")) - + "]"); + BuiltObjectList objectList = currentResult.findResultObject(BuiltObjectList.class); + if (objectList == null) { + log.info("Nothing to deploy"); + return true; + } + + DeployedObjectList resultList = new DeployedObjectList(); - commandResult.resultObject(deployedArtifactList); + for (BuiltObject obj: objectList) { + if (obj == null) + continue; + + printOutput(" = Deploying for built of type [" + obj.getObject().getClass().getName() + "]" ); + + ObjectDeployer deployer = ObjectSupportRegistry.getInstance().findDeployer(obj); + if (deployer == null) { + log.warn("ObjectDeployer not found for built object of type [{}]", obj.getObject().getClass().getName()); + printOutput(" :: ObjectDeployer not found"); + continue; + } + + printOutput(" :: ObjectDeployer is: " + deployer.getClass().getName()); + DeployedObject result = deployer.deploy(obj, instructions); + if (result != null) { + resultList.add(result); + printOutput(" :: Result is: " + result.getClass().getName()); + } else + printOutput(" :: Result is: NULL"); + + } + + commandResult.resultObject(resultList); return true; } diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Enrich.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Enrich.java index 90d68c4..c3575be 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Enrich.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Enrich.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,8 +31,10 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.google.gson.Gson; +import com.google.gson.JsonArray; import com.google.gson.JsonElement; import com.google.gson.JsonObject; +import com.google.gson.JsonPrimitive; import ru.entaxy.platform.base.support.CommonUtils; import ru.entaxy.platform.base.support.JSONUtils; @@ -47,6 +49,8 @@ import ru.entaxy.platform.core.producer.api.ProducerResult; import ru.entaxy.platform.core.producer.api.ProducerResult.CommandResult; import ru.entaxy.platform.core.producer.executor.AbstractCommandExecutor; import ru.entaxy.platform.core.producer.executor.CommandExecutor; +import ru.entaxy.platform.core.producer.executor.objectmodel.AbstractItem; +import ru.entaxy.platform.core.producer.executor.objectmodel.Calculation; import ru.entaxy.platform.core.producer.executor.objectmodel.FactoredObject; import ru.entaxy.platform.core.producer.executor.objectmodel.FactoredObjectProxy; import ru.entaxy.platform.core.producer.executor.objectmodel.FactoredObjectRef; @@ -58,12 +62,40 @@ import ru.entaxy.platform.core.producer.impl.RefFieldInfoImpl; public class Enrich extends AbstractCommandExecutor { private static final Logger log = LoggerFactory.getLogger(Enrich.class); - + public Enrich(EntaxyProducerService entaxyProducerService) { super(entaxyProducerService); // TODO Auto-generated constructor stub } + // TODO move to FieldInfo + protected boolean isScoped(FieldInfo fi) { + return fi.getJsonOrigin().has(EntaxyFactory.CONFIGURATION.DIRECTIVES.SCOPED); + } + + // TODO move to FieldInfo + protected boolean isInScope(FieldInfo fi, String currentScope) { + if (!isScoped(fi)) + return true; + JsonElement je = fi.getJsonOrigin().get(EntaxyFactory.CONFIGURATION.DIRECTIVES.SCOPED); + if (!je.isJsonArray()) + return true; + JsonArray ja = je.getAsJsonArray(); + if (ja.size() == 0) + return true; + for (int i=0; i instructions) throws Exception { - int count = 15; - if (!instructions.containsKey("_count")) { - instructions.put("_count", count); - } - - if (instructions.get("_count") instanceof Integer) - count = (Integer)instructions.get("_count"); - else if (instructions.get("_count") instanceof Number) - count = ((Number)instructions.get("_count")).intValue(); - count--; - - printOutput("\n\n\t== ENRICH == #" + count + " ==\n\n"); - ObjectModel objectModel = currentResult.findResultObject(ObjectModel.class); objectModel.startTracking(); @@ -104,7 +123,8 @@ public class Enrich extends AbstractCommandExecutor { Gson gson = new Gson(); - // enrich type to ensure we can resolve refs + // enrich type to ensure we can resolve refs + // and enrich scope for (FactoredObject fo: objectModel.objects) { @@ -123,6 +143,11 @@ public class Enrich extends AbstractCommandExecutor { fo.setObjectType(factory.getFactoryType()); objectModel.setDirty(); } + + if (!fo.origin.has(FIELDS.SCOPE)) { + JSONUtils.setValue(fo.origin, FIELDS.SCOPE, gson.toJsonTree(fo.scope), true); + objectModel.setDirty(); + } } // enrich fields @@ -148,26 +173,35 @@ public class Enrich extends AbstractCommandExecutor { objectModel.setDirty(); } + JSONUtils.setValue(objectOrigin, FactoredObject.IGNORE_SECTION, new JsonObject(), true); + JsonObject objectProperties = objectOrigin.get(FIELDS.PROPERTIES).getAsJsonObject(); - List factoryFields = factory.getFields(OUTPUTS.OUTPUT_TYPE_INIT); + List factoryFields = factory.getFields( + CommonUtils.getValid(fo.getOutputType(), OUTPUTS.OUTPUT_TYPE_INIT) + ); for (FieldInfo fi: factoryFields) { FieldInfo fieldInfo = fi; - log.info("\n ITERATING FOR FIELD: " + fi.getName() + "\n" + fi.getJsonOrigin()); + log.debug("\n ITERATING FOR FIELD: " + fi.getName() + "\n" + fi.getJsonOrigin()); + if (FIELDS.OBJECT_ID.equals(fi.getName()) || FIELDS.OBJECT_TYPE.equals(fi.getName())) continue; + // check scope + if (!isInScope(fi, fo.scope)) + continue; + // check if lookup if (isLookup(fi)) { String lookup = getLookup(fi); - log.info("\n LOOKUP FIELD: " + fi.getName() + " -> " + lookup); + log.debug("\n LOOKUP FIELD: " + fi.getName() + " -> " + lookup); // replace lookup with corresponding ref Optional toLookupOpt = factoryFields.stream() @@ -178,7 +212,7 @@ public class Enrich extends AbstractCommandExecutor { log.error("Factory configuration error: loooked up field [{}] referenced by [{}] not found in factory [{}]" , lookup , fi.getName() - , factory.getFactoryId()); + , factory.getId()); continue; } FieldInfo toLookup = toLookupOpt.get(); @@ -208,7 +242,7 @@ public class Enrich extends AbstractCommandExecutor { } fieldInfoImpl.setJsonOrigin(lookupJson); - log.info("\n LOOKUP FIELD JSON: \n" + lookupJson.toString()); + log.debug("\n LOOKUP FIELD JSON: \n" + lookupJson.toString()); fieldInfo = fieldInfoImpl; @@ -288,12 +322,45 @@ public class Enrich extends AbstractCommandExecutor { delayed.removeAll(toRemove); } + JsonObject ignores = objectOrigin.get(FactoredObject.IGNORE_SECTION).getAsJsonObject(); + + // try to calculate + for (AbstractItem ai: fo.getInternals()) { + if (!(ai instanceof Calculation)) + continue; + Calculation calc = (Calculation)ai; + + // leave lazy calculations until generation + if (calc.isLazy()) + continue; + + Object result = calc.calculate(objectModel, fo); + if (result != Calculation.NOT_ENOUGH_DATA) { + printOutput("[CALCULATION] DONE for [" + fo.getObjectId() + "/" + calc.relativePath + "] :: " + result.toString()); + String currentPath = calc.relativePath; + String targetPath = calc.getTargetPath(); + boolean remove = (!currentPath.equals(targetPath) && calc.isRemoveResolved()); + targetPath = targetPath.replace("$.", ""); + JSONUtils.replaceValue(objectOrigin, targetPath, (new Gson()).toJsonTree(result)); + if (remove) { + int ind = currentPath.lastIndexOf("."); + String fieldName = ind>=0 + ?currentPath.substring(ind+1) + :currentPath; + ignores.addProperty(fieldName, true); + JSONUtils.replaceValue(objectOrigin, currentPath, (new Gson()).toJsonTree("TO_REMOVE")); + } + printOutput("[DIRTY] SET CALCULATED [" + result + "] to [" + targetPath + "]"); + objectModel.setDirty(); + } + } + } - if (objectModel.stopTracking() && count>0) { + if (objectModel.stopTracking()) { // remove ##embedded for (FactoredObject fo: objectModel.objects) @@ -305,8 +372,6 @@ public class Enrich extends AbstractCommandExecutor { .reset().target("analyze").complete(); } - instructions.put("_count", count); - JsonObject outgoingJson = objectModel.getJsonCurrent(); printOutput("\n== INCOMING JSON ==\n"); @@ -321,10 +386,10 @@ public class Enrich extends AbstractCommandExecutor { protected boolean processField(ObjectModel objectModel, FieldInfo fi, FactoredObject fo, Gson gson) { - log.info("\nPROCESSING FIELD: " + fi.getName()); + log.debug("\nPROCESSING FIELD: " + fi.getName()); if (fi.isRef()) { - log.info("\nPROCESSING REF: " + fi.getName()); + log.debug("\nPROCESSING REF: " + fi.getName()); return processRef(objectModel, (RefFieldInfo)fi, fo, gson); } @@ -332,15 +397,38 @@ public class Enrich extends AbstractCommandExecutor { JsonObject objectOrigin = fo.origin; JsonObject objectProperties = objectOrigin.get(FIELDS.PROPERTIES).getAsJsonObject(); + JsonObject ignores = objectOrigin.get(FactoredObject.IGNORE_SECTION).getAsJsonObject(); boolean exists = objectProperties.has(fi.getName()); - if (!exists) { + boolean ignored = ignores.has(fi.getName()); + if (!ignored) { if (fi.isRequired()) { - printOutput("[DIRTY] CREATED " + fi.getName() + " for [" + fo.getObjectId() + "/" + fo.getObjectType() + "]"); - - objectProperties.add(fi.getName(), fi.getJsonOrigin().get(FIELDS.DEFAULT_VALUE)); - objectModel.setDirty(); - result = true; + if (exists) { + printOutput("[CHECK] IS FIXED VALUE " + fi.getName() + " for [" + fo.getObjectId() + "/" + fo.getObjectType() + "]"); + if (fi.getJsonOrigin().has("fixedValue")) { + JsonElement fixedValue = fi.getJsonOrigin().get("fixedValue"); + JsonElement currentValue = objectProperties.get(fi.getName()); + boolean replaceValue = false; + if (fixedValue != null) { + if (currentValue == null) + replaceValue = true; + else + replaceValue = !fixedValue.toString().equals(currentValue.toString()); + } + if (replaceValue) { + printOutput("[DIRTY] REPLACED WITH FIXED VALUE: " + fi.getName() + " for [" + fo.getObjectId() + "/" + fo.getObjectType() + "]"); + JSONUtils.replaceValue(objectProperties, fi.getName(), fixedValue); + objectModel.setDirty(); + result = true; + } + } + } else { + printOutput("[DIRTY] CREATED " + fi.getName() + " for [" + fo.getObjectId() + "/" + fo.getObjectType() + "]"); + + objectProperties.add(fi.getName(), fi.getJsonOrigin().get(FIELDS.DEFAULT_VALUE)); + objectModel.setDirty(); + result = true; + } } } return result; @@ -351,8 +439,14 @@ public class Enrich extends AbstractCommandExecutor { JsonObject objectOrigin = fo.origin; JsonObject objectProperties = objectOrigin.get(FIELDS.PROPERTIES).getAsJsonObject(); + JsonObject ignores = objectOrigin.get(FactoredObject.IGNORE_SECTION).getAsJsonObject(); boolean exists = objectProperties.has(fi.getName()); + boolean ignored = ignores.has(fi.getName()); + + if (ignored) + return true; + if (!exists) { if (fi.isRequired()) { @@ -491,6 +585,11 @@ public class Enrich extends AbstractCommandExecutor { printOutput("[DIRTY] UPDATED " + fi.getName() + " for [" + fo.getObjectId() + "/" + fo.getObjectType() + "]"); objectModel.setDirty(); } + // TODO move to constant + if (refCopy.has("resolveAlways")) { + currentObject.remove("resolveAlways"); + currentObject.add("resolveAlways", refCopy.get("resolveAlways")); + } if (isLookup(fi)) { String lookup = getLookup(fi); JsonElement lookupValue = objectProperties.get(lookup); @@ -534,12 +633,26 @@ public class Enrich extends AbstractCommandExecutor { if (!result) { // we have something which is not a ref and not a object to produce - // we'll treat it as resolved ref value - refCopy.remove(FIELDS.DEFAULT_VALUE); - refCopy.add(FactoredObjectRef.TARGET_VALUE_FIELD, currentValue); - refCopy.addProperty(FactoredObjectRef.IS_RESOLVED_FIELD, true); - printOutput("[DIRTY] CONSIDER VALUE [" + currentValue.toString() + "] AS RESOLVED " + fi.getName() + " for [" + fo.getObjectId() + "/" + fo.getObjectType() + "]"); - objectModel.setDirty(); + if (fi.isRefByValueOnly()) { + // we'll treat it as resolved ref value + ignores.remove(fi.getName()); + ignores.addProperty(fi.getName(), true); + printOutput("[DIRTY] CONSIDER VALUE [" + currentValue.toString() + "] AS RESOLVED; IGNORE " + fi.getName() + " for [" + fo.getObjectId() + "/" + fo.getObjectType() + "]"); + objectModel.setDirty(); + } else { + // we'll treat current value as targetId if it's not null and not array + if (currentValue.isJsonPrimitive()) { + refCopy.remove(FIELDS.DEFAULT_VALUE); + refCopy.add(FactoredObjectRef.TARGET_ID_FIELD, currentValue); + refCopy.remove(FactoredObjectRef.TARGET_TYPE_FIELD); + refCopy.addProperty(FactoredObjectRef.TARGET_TYPE_FIELD, fi.getType()); + printOutput("[DIRTY] CONSIDER VALUE [" + currentValue.toString() + "] AS TARGET ID in " + fi.getName() + " for [" + fo.getObjectId() + "/" + fo.getObjectType() + "]"); + JSONUtils.replaceValue(objectProperties, fi.getName(), refCopy); + objectModel.setDirty(); + } else { + printOutput("[WARN] IGNORE VALUE [" + currentValue.toString() + "] in " + fi.getName() + " for [" + fo.getObjectId() + "/" + fo.getObjectType() + "]"); + } + } result = true; } } diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Generate.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Generate.java index 4601838..aa4d3c6 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Generate.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Generate.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -49,6 +49,7 @@ public class Generate extends AbstractCommandExecutor { this.printOutput("\n\t == Execution ==\n"); for (AbstractTask at: generationModel.getTasks()) { at.setPrintOutput(isPrintOutput); + this.printOutput("\tExecuting: " + at.getInfo()); at.execute(currentResult, commandResult, entaxyProducerService, instructions); this.printOutput("\n :: Result ::\n"); if (at.getGeneratedResult()==null) diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Install.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Install.java index 3c20460..c791e96 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Install.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Install.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,30 +21,26 @@ package ru.entaxy.platform.core.producer.executor.commands; import java.util.Map; -import org.osgi.framework.Constants; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; -import ru.entaxy.platform.base.support.CommonUtils; -import ru.entaxy.platform.core.artifact.Blueprint; -import ru.entaxy.platform.core.artifact.DeployedArtifact; -import ru.entaxy.platform.core.artifact.installer.builder.ClusterInstaller; -import ru.entaxy.platform.core.artifact.installer.builder.InstallationResult; -import ru.entaxy.platform.core.artifact.installer.builder.Installer; -import ru.entaxy.platform.core.artifact.installer.builder.LocalInstaller; -import ru.entaxy.platform.core.artifact.installer.builder.typed.BlueprintInstaller; -import ru.entaxy.platform.core.artifact.service.ArtifactService; import ru.entaxy.platform.core.producer.api.EntaxyProducerService; import ru.entaxy.platform.core.producer.api.ProducerResult; import ru.entaxy.platform.core.producer.api.ProducerResult.CommandResult; import ru.entaxy.platform.core.producer.executor.AbstractCommandExecutor; import ru.entaxy.platform.core.producer.executor.CommandExecutor; -import ru.entaxy.platform.core.producer.executor.CommandInstructions; -import ru.entaxy.platform.core.producer.executor.support.ArtifactsHelper; -import ru.entaxy.platform.core.producer.executor.support.DeployedArtifactList; -import ru.entaxy.platform.core.producer.executor.support.InstallationResultList; +import ru.entaxy.platform.core.producer.executor.deployer.DeployedObject; +import ru.entaxy.platform.core.producer.executor.deployer.DeployedObjectList; +import ru.entaxy.platform.core.producer.executor.installer.InstalledObject; +import ru.entaxy.platform.core.producer.executor.installer.InstalledObjectList; +import ru.entaxy.platform.core.producer.executor.installer.ObjectInstaller; +import ru.entaxy.platform.core.producer.executor.support.ObjectSupportRegistry; @CommandExecutor(id = "install", predecessors = "deploy") public class Install extends AbstractCommandExecutor { + private static final Logger log = LoggerFactory.getLogger(Install.class); + public static final String INSTALL_LOCAL_INSTRUCTION = "installLocal"; public static final String UPDATE_INSTRUCTION = "update"; public static final String INSTALL_ONLY_IF_MISSING_INSTRUCTION = "installOnlyIfMissing"; @@ -57,89 +53,39 @@ public class Install extends AbstractCommandExecutor { protected boolean doExecute(ProducerResult currentResult, CommandResult commandResult, Map instructions) throws Exception { - CommandInstructions commandInstructions = new CommandInstructions(instructions); - - boolean installLocal = - commandInstructions.has(INSTALL_LOCAL_INSTRUCTION) - ?commandInstructions.getBoolean(INSTALL_LOCAL_INSTRUCTION) - :false; - - boolean installOnlyIfMissing = - commandInstructions.has(INSTALL_ONLY_IF_MISSING_INSTRUCTION) - ?commandInstructions.getBoolean(INSTALL_ONLY_IF_MISSING_INSTRUCTION) - :false; - - String update = - commandInstructions.has(UPDATE_INSTRUCTION) - ?commandInstructions.getString(UPDATE_INSTRUCTION) - :null; - - Object installLocalValue = instructions.get(INSTALL_LOCAL_INSTRUCTION); - if (installLocalValue != null) - if (installLocalValue instanceof Boolean) - installLocal = (Boolean)installLocalValue; - - DeployedArtifactList deployedArtifactList = currentResult.findResultObject(DeployedArtifactList.class); - InstallationResultList installationResultList = new InstallationResultList(); - - ArtifactService artifactService = ArtifactsHelper.getInstance().getArtifactService(); - - for (DeployedArtifact da: deployedArtifactList) { - - InstallationResult result = null; - - Installer installer = null; - - String artifactUpdate = update; - - printOutput("-> Installing artifact: [" + da.getArtifact().getCoordinates().toString() + "]"); - if (installLocal) { - LocalInstaller localInstaller = artifactService.installers().local() - .artifact(da); - installer = localInstaller; - printOutput("-> Installing locally"); - } else { - ClusterInstaller clusterInstaller = artifactService.installers().cluster() - .artifact(da); - installer = clusterInstaller; - printOutput("-> Installing clustered"); - } - - // TODO add support for other types when they appear - if (da.getArtifact().getCategory().equals(Blueprint.ARTIFACT_CATEGORY_BLUEPRINT)) { - // we're installing blueprint - printOutput("-> Installing: " + da.getArtifact().getCategory()); - BlueprintInstaller blueprintInstaller = installer.typed(BlueprintInstaller.class); - if (installOnlyIfMissing) - blueprintInstaller.installOnlyIfMissing(); - if (artifactUpdate != null) { - if (!CommonUtils.isValid(artifactUpdate)) { - artifactUpdate = da - .getArtifact().getProperties() - .getOrDefault(Constants.BUNDLE_SYMBOLICNAME, "") - .toString(); - } - blueprintInstaller.update(artifactUpdate); - } - result = blueprintInstaller.start().install(); - } else { - printOutput("-> Unknown category: " + da.getArtifact().getCategory()); - } - - if (result != null) { - for (String key: da.getArtifact().getProperties().keySet()) - result.getProperties().putIfAbsent(key, da.getArtifact().getProperties().get(key)); - // TODO imrove Coordinates: add "asMap" method - result.getProperties().put("artifact.artifactId", da.getArtifact().getCoordinates().getArtifactId()); - result.getProperties().put("artifact.groupId", da.getArtifact().getCoordinates().getGroupId()); - result.getProperties().put("artifact.version", da.getArtifact().getCoordinates().getVersion()); - result.getProperties().put("artifact.type", da.getArtifact().getCoordinates().getType()); - result.getProperties().put("artifact.classifier", da.getArtifact().getCoordinates().getClassifier()); - installationResultList.add(result); - } + DeployedObjectList objectList = currentResult.findResultObject(DeployedObjectList.class); + if (objectList == null) { + log.info("Nothing to install"); + return true; } - commandResult.resultObject(installationResultList); + InstalledObjectList resultList = new InstalledObjectList(); + + for (DeployedObject obj: objectList) { + + if (obj == null) + continue; + + printOutput(" = Installing for deployed of type [" + obj.getObject().getClass().getName() + "]" ); + + + ObjectInstaller installer = ObjectSupportRegistry.getInstance().findInstaller(obj); + if (installer == null) { + log.warn("ObjectInstaller not found for deployed object of type [{}]", obj.getObject().getClass().getName()); + printOutput(" :: ObjectInstaller not found"); + continue; + } + + printOutput(" :: ObjectInstaller is: " + installer.getClass().getName()); + InstalledObject result = installer.install(obj, instructions); + if (result != null) { + resultList.add(result); + printOutput(" :: Result is: " + result.getClass().getName()); + } else + printOutput(" :: Result is: NULL"); + } + + commandResult.resultObject(resultList); return true; } diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Layout.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Layout.java index 3b4c8d3..580ef22 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Layout.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Layout.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -46,7 +46,6 @@ public class Layout extends AbstractCommandExecutor { log.debug("Executing command [{}]", getId()); ObjectModel objectModel = currentResult.findResultObject(ObjectModel.class); - printOutput("\n\n\t== LAYOUT == \n\n"); printOutput("\n\tIncoming JSON ::\n\n"); printOutput(objectModel.getJsonCurrent().toString()); diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/PrepareGenerate.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/PrepareGenerate.java index 4979fad..1baea11 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/PrepareGenerate.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/PrepareGenerate.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Store.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Store.java index 79e9d5e..33477ac 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Store.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Store.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,6 +19,7 @@ */ package ru.entaxy.platform.core.producer.executor.commands; +import java.util.HashMap; import java.util.Map; import java.util.stream.Collectors; @@ -36,7 +37,9 @@ import ru.entaxy.platform.core.producer.api.ProducerResult; import ru.entaxy.platform.core.producer.api.ProducerResult.CommandResult; import ru.entaxy.platform.core.producer.executor.AbstractCommandExecutor; import ru.entaxy.platform.core.producer.executor.CommandExecutor; -import ru.entaxy.platform.core.producer.executor.support.InstallationResultList; +import ru.entaxy.platform.core.producer.executor.installer.InstalledObject; +import ru.entaxy.platform.core.producer.executor.installer.InstalledObjectList; +import ru.entaxy.platform.core.producer.executor.support.EntaxyObjectPropertiesHelper; @CommandExecutor(id = "store", predecessors = "install") public class Store extends AbstractCommandExecutor { @@ -58,12 +61,15 @@ public class Store extends AbstractCommandExecutor { protected boolean doExecute(ProducerResult currentResult, CommandResult commandResult, Map instructions) throws Exception { - InstallationResultList installationResultList = currentResult.findResultObject(InstallationResultList.class); + InstalledObjectList objectList = currentResult.findResultObject(InstalledObjectList.class); if (objectStorageService == null) objectStorageService = OSGIUtils.services().ofClass(EntaxyObjectStorageService.class).get(); - for (InstallationResult installationResult: installationResultList) { + for (InstalledObject obj: objectList) { + if (!(obj.getObject() instanceof InstallationResult)) + continue; + InstallationResult installationResult = (InstallationResult)obj.getObject(); printOutput("\n -- INSTALLATION RESULT ::" + "\n\t" + installationResult.getResult().toString() + "\n\tproperties:" @@ -91,8 +97,13 @@ public class Store extends AbstractCommandExecutor { ) ); + Map objectProperties = new HashMap<>(); + objectProperties.putAll(installationResult.getProperties()); + if (EntaxyObjectPropertiesHelper.isMerged(objectProperties)) + objectProperties.putAll(EntaxyObjectPropertiesHelper.getMainObjectProperties(objectProperties)); + EntaxyObjectStorage objectStorage = objectStorageService.getObjectStorage( - installationResult.getProperties() + objectProperties .getOrDefault(EntaxyObject.FIELDS.OBJECT_TYPE, "").toString() ); @@ -102,7 +113,7 @@ public class Store extends AbstractCommandExecutor { continue; } - objectStorage.store(installationResult.getProperties()); + objectStorage.store(objectProperties); } diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Validate.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Validate.java index 3b44f29..e27013f 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Validate.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/commands/Validate.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -43,7 +43,7 @@ public class Validate extends AbstractCommandExecutor { @Override protected boolean doExecute(ProducerResult currentResult, CommandResult commandResult, Map instructions) throws Exception { - log.info("Executing command [{}]", getId()); + log.debug("Executing command [{}]", getId()); ObjectModel objectModel = currentResult.findResultObject(ObjectModel.class); // TODO check ObjectModel.objects & .refs for // - factory exists diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/AbstractObjectTask.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/AbstractObjectTask.java index d57541f..6de7ff7 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/AbstractObjectTask.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/AbstractObjectTask.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producer-core * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/AbstractRefTask.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/AbstractRefTask.java index 7543688..7ac96c8 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/AbstractRefTask.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/AbstractRefTask.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/AbstractTask.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/AbstractTask.java index cd97585..7e5b03b 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/AbstractTask.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/AbstractTask.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/CalculateTask.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/CalculateTask.java index 4591b65..aa6cd8a 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/CalculateTask.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/CalculateTask.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producer-core * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -40,6 +40,8 @@ public class CalculateTask extends AbstractObjectTask { private static final Logger log = LoggerFactory.getLogger(CalculateTask.class); + private static Gson GSON = new Gson(); + public static boolean hasCalculations(FactoredObject factoredObject) { return factoredObject.getInternals().stream().filter(obj -> (obj instanceof Calculation)) .count() > 0; @@ -67,12 +69,19 @@ public class CalculateTask extends AbstractObjectTask { for (Calculation calculation: calculations) { Object result = calculation.calculate(objectModel, origin); - System.out.println("CALCULATION RESOLVED TO :: " + result); - System.out.println("\n REPLACE" + printOutput("CALCULATION RESOLVED TO :: " + result); + printOutput("\n REPLACE" + "\n\t" + calculation.origin - + "\n\tWITH :: " + (new Gson()).toJsonTree(result) + + "\n\tWITH :: " + GSON.toJsonTree(result) + "\n\tAT :: " + calculation.relativePath); - JSONUtils.replaceValue(origin.origin, calculation.relativePath, (new Gson()).toJsonTree(result)); + String currentPath = calculation.relativePath; + String targetPath = calculation.getTargetPath(); + boolean remove = (!currentPath.equals(targetPath) && calculation.isRemoveResolved()); + targetPath = targetPath.replace("$.", ""); + JSONUtils.replaceValue(origin.origin, targetPath, GSON.toJsonTree(result)); + if (remove) { + JSONUtils.replaceValue(origin.origin, currentPath, GSON.toJsonTree("TO_REMOVE")); + } } diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/DefaultObjectDataResolver.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/DefaultObjectDataResolver.java index 22654e6..406200f 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/DefaultObjectDataResolver.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/DefaultObjectDataResolver.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producer-core * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GenerateRefTask.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GenerateRefTask.java index 773c0bc..a11b05e 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GenerateRefTask.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GenerateRefTask.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -91,6 +91,34 @@ public class GenerateRefTask extends AbstractRefTask { , EntaxyFactory.SCOPE.PRIVATE.label , effectiveProperties); + } else { + JsonObject targetConfig = targetObject.origin.deepCopy(); + JsonObject currentConfig = this.objectRef.origin; + JSONUtils.mergeObjects(currentConfig, targetConfig); + + // System.out.println("\n\n\tGENERATING REF WITH CONFIG: \n\t" + targetConfig); + + String factoryId = targetConfig.has(FIELDS.FACTORY_ID) + ?targetConfig.get(FIELDS.FACTORY_ID).getAsString() + :""; + + String factoryType = targetConfig.has(FIELDS.OBJECT_TYPE) + ?targetConfig.get(FIELDS.OBJECT_TYPE).getAsString() + :""; + + if (!CommonUtils.isValid(factoryId) || !CommonUtils.isValid(factoryType)) + throw new IllegalArgumentException("Factory not defined for object: [" + + this.objectRef.getTargetId() + + ":" + + this.objectRef.getTargetType() + + "]"); + + Map effectiveProperties = createEffectiveProperties(targetConfig, instructions); + this.generatedResult = producerService.getProducerForType(factoryType).getFactoryById(factoryId) + .generate(EntaxyFactory.CONFIGURATION.OUTPUTS.OUTPUT_TYPE_REF + , EntaxyFactory.SCOPE.PRIVATE.label + , effectiveProperties); + } } return true; diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GenerateTask.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GenerateTask.java index dcda374..805a61a 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GenerateTask.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GenerateTask.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,6 +21,7 @@ package ru.entaxy.platform.core.producer.executor.generationmodel; import java.util.Base64; import java.util.HashMap; +import java.util.List; import java.util.Map; import java.util.Map.Entry; @@ -35,6 +36,7 @@ import ru.entaxy.platform.base.support.JSONUtils; import ru.entaxy.platform.base.objects.EntaxyObject.FIELDS; import ru.entaxy.platform.base.objects.EntaxyObject.HEADERS; import ru.entaxy.platform.base.objects.factory.EntaxyFactory; +import ru.entaxy.platform.base.objects.factory.EntaxyFactory.OutputInfo; import ru.entaxy.platform.core.producer.api.EntaxyProducerService; import ru.entaxy.platform.core.producer.api.ProducerResult; import ru.entaxy.platform.core.producer.api.ProducerResult.CommandResult; @@ -46,6 +48,8 @@ public class GenerateTask extends AbstractObjectTask { public static final String INSTRUCTIONS_FIELD = "##instructions"; public static final String GENERATION_PROPERTIES_FIELD = "##generation"; + public static final String SKIP_OBJECT_PUBLISHING_FIELD = "##SKIP_OBJECT_PUBLISHING"; + public static final String DIRECTIVE_SKIP_PUBLISH = "@SKIP_PUBLISH"; public String factoryId; public String factoryType; @@ -71,8 +75,8 @@ public class GenerateTask extends AbstractObjectTask { try { EntaxyFactory f = producerService.findFactoryById(factoryId); if (f != null) { - log.debug("Factory found by id [{}] with type [{}]", f.getFactoryId(), f.getFactoryType()); - factoryType = f.getFactoryType(); + log.debug("Factory found by id [{}] with type [{}]", f.getId(), f.getType()); + factoryType = f.getType(); } else throw new IllegalArgumentException("Factory not found: " + factoryId); } catch (Exception e) { @@ -80,7 +84,8 @@ public class GenerateTask extends AbstractObjectTask { } log.debug("Execute for type [{}] with factoryId [{}]", factoryType, factoryId); Map effectiveProperties = createEffectiveProperties(instructions); - this.generatedResult = producerService.getProducerForType(factoryType).getFactoryById(factoryId).generate(outputType, scope, effectiveProperties); + EntaxyFactory factory = producerService.getProducerForType(factoryType).getFactoryById(factoryId); + this.generatedResult = factory.generate(outputType, scope, effectiveProperties); // objectId could be changed by pre/post processor, so we update it // TODO move string to const String objectId = this.generatedResult.getProperties() @@ -89,21 +94,100 @@ public class GenerateTask extends AbstractObjectTask { log.debug("Changing objectId from [{}] to [{}]", origin.getObjectId(), objectId); origin.setObjectId(objectId); } + + boolean publishObject = !isSkipPublish(factory, this.outputType, this.scope); + + // check for old-style configuration + // TODO remove in next releases + if (publishObject) + if (effectiveProperties.containsKey(SKIP_OBJECT_PUBLISHING_FIELD)) { + try { + publishObject = !((Boolean)effectiveProperties.get(SKIP_OBJECT_PUBLISHING_FIELD)); + } catch (Exception e) { + // NOOP + } + } + GeneratedHeaders headers = GeneratedHeaders.getHeaders(this.generatedResult.getProperties()); - headers.set(HEADERS.MAIN_OBJECT, origin.getObjectId() + ":" + factoryType); - headers.append(HEADERS.GENERATED_OBJECTS, origin.getObjectId() + ":" + factoryType); - // headers.set(GeneratedHeaders.HEADER_MAIN_OBJECT_TYPE, factoryType); - // headers.set(GeneratedHeaders.HEADER_MAIN_OBJECT_FACTORY_ID, factoryId); - // headers.append(GeneratedHeaders.HEADER_OBJECT_ID, origin.getObjectId()); - // headers.append(GeneratedHeaders.HEADER_OBJECT_TYPE, factoryType); - headers.append(HEADERS.GENERATED_OBJECTS_CONFIG - , Base64.getEncoder().encodeToString(origin.origin.toString().getBytes())); + headers.set(HEADERS.ENTAXY_GENERATED, "true"); + if (publishObject) { + headers.set(HEADERS.MAIN_OBJECT, origin.getObjectId() + ":" + factoryType + ":" + scope); + headers.append(HEADERS.GENERATED_OBJECTS, origin.getObjectId() + ":" + factoryType + ":" + scope); + // headers.set(GeneratedHeaders.HEADER_MAIN_OBJECT_TYPE, factoryType); + // headers.set(GeneratedHeaders.HEADER_MAIN_OBJECT_FACTORY_ID, factoryId); + // headers.append(GeneratedHeaders.HEADER_OBJECT_ID, origin.getObjectId()); + // headers.append(GeneratedHeaders.HEADER_OBJECT_TYPE, factoryType); + headers.append(HEADERS.GENERATED_OBJECTS_CONFIG + , Base64.getEncoder().encodeToString( + getFilteredObjectData(origin.origin, factory) + .toString().getBytes())); + } this.generationProperties.clear(); this.generationProperties.putAll(effectiveProperties); this.generatedResult.getProperties().put(GENERATION_PROPERTIES_FIELD, new HashMap(this.generationProperties)); return true; } + protected JsonObject getFilteredObjectData(JsonObject originData, EntaxyFactory factory) { + JsonObject result = getFilteredObject(originData, factory); + if (result == null) + result = new JsonObject(); + return result; + } + + protected JsonObject getFilteredObject(JsonObject originObject, EntaxyFactory factory) { + JsonObject result = new JsonObject(); + for (Entry entry: originObject.entrySet()) { + String name = entry.getKey(); + if (FactoredObject.EMBEDDED_FIELD.equals(name) || FactoredObject.IGNORE_SECTION.equals(name)) + continue; + JsonElement je = entry.getValue(); + if (je.isJsonObject()) { + JsonObject jo = je.getAsJsonObject(); + if (jo.has(EntaxyFactory.CONFIGURATION.DIRECTIVES.INTERNAL)) { + boolean skip = true; + try { + skip = jo.get(EntaxyFactory.CONFIGURATION.DIRECTIVES.INTERNAL).getAsBoolean(); + } catch (Exception e) { + // NOOP + } + if (skip) + continue; + } + JsonObject filtered = getFilteredObject(jo, factory); + if (filtered != null) + result.add(name, filtered); + } else { + result.add(name, je); + } + } + return result; + } + + protected boolean isSkipPublish(EntaxyFactory factory, String outputType, String scope) { + OutputInfo info = factory.getOutputByType(outputType); + if (info == null) + return false; + Map config = info.getConfig(); + if (config == null) + return false; + if (config.containsKey(DIRECTIVE_SKIP_PUBLISH)) { + try { + // check scopes + Map data = (Map)config.get(DIRECTIVE_SKIP_PUBLISH); + if (data.containsKey(EntaxyFactory.CONFIGURATION.OUTPUTS.ATTRIBUTES.SCOPES)) { + List scopes = (List)data.get(EntaxyFactory.CONFIGURATION.OUTPUTS.ATTRIBUTES.SCOPES); + return scopes.contains(scope); + } else { + return true; + } + } catch (Exception e) { + return true; + } + } + return false; + } + protected Map createEffectiveProperties(Map instructions){ Map result = new HashMap<>(); result.put(INSTRUCTIONS_FIELD, instructions); diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GeneratedHeaders.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GeneratedHeaders.java index 4dc60c4..68b58f5 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GeneratedHeaders.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GeneratedHeaders.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -50,6 +50,7 @@ public class GeneratedHeaders { if (!(obj instanceof List)) { List list = new LinkedList(); list.add(obj); + headers.put(name, list); } } List list = (List)headers.get(name); diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GeneratedList.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GeneratedList.java index 882fe90..cf870a6 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GeneratedList.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GeneratedList.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GenerationModel.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GenerationModel.java index 5beb4b8..19e83e2 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GenerationModel.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/GenerationModel.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -98,14 +98,15 @@ public class GenerationModel { List embeddedRefs = fo.embedded.stream().filter(f->(f instanceof FactoredObjectRef)) .map(f -> (FactoredObjectRef)f) .filter(f -> !f.isBackRef()) - .filter(f -> !f.isLink()) + .filter(f -> !f.isLink() || f.isResolveAlways()) .collect(Collectors.toList()); for (FactoredObjectRef embeddedRef: embeddedRefs) { - if (!embeddedRef.isLink()) { + if (!embeddedRef.isLink() || embeddedRef.isResolveAlways()) { localPreTasks.add(new ResolveRefTask(embeddedRef)); - if (!embeddedRef.isRefByValueOnly()) - localPreTasks.add(new GenerateRefTask(embeddedRef)); + if (!embeddedRef.isLink()) + if (!embeddedRef.isRefByValueOnly()) + localPreTasks.add(new GenerateRefTask(embeddedRef)); } } diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/MergeTask.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/MergeTask.java index 4e9b3db..2f772d5 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/MergeTask.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/MergeTask.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,6 +31,7 @@ import ru.entaxy.platform.core.producer.api.EntaxyProducerService; import ru.entaxy.platform.core.producer.api.ProducerResult; import ru.entaxy.platform.core.producer.api.ProducerResult.CommandResult; import ru.entaxy.platform.core.producer.executor.generationmodel.merge.MergeHelper; +import ru.entaxy.platform.core.producer.executor.support.EntaxyObjectPropertiesHelper; public class MergeTask extends AbstractTask { @@ -72,13 +73,16 @@ public class MergeTask extends AbstractTask { GeneratedHeaders sourceGeneratedHeaders = GeneratedHeaders.getHeaders(source.getProperties()); GeneratedHeaders targetGeneratedHeaders = GeneratedHeaders.getHeaders(target.getProperties()); - GeneratedHeaders resultGeneratedHeaders = GeneratedHeaders.getHeaders(this.generatedResult.getProperties()); + GeneratedHeaders resultGeneratedHeaders = GeneratedHeaders.getHeaders( + // this.generatedResult.getProperties() + EntaxyObjectPropertiesHelper.getMainObjectProperties(this.generatedResult.getProperties()) + ); for (String header: targetGeneratedHeaders.headers.keySet()) resultGeneratedHeaders.set(header, targetGeneratedHeaders.headers.get(header)); for (String header: sourceGeneratedHeaders.headers.keySet()) - if (EntaxyObject.HEADERS.MAIN_OBJECT.equals(header)) + if (EntaxyObject.HEADERS.MAIN_OBJECT.equals(header) || EntaxyObject.HEADERS.ENTAXY_GENERATED.equals(header)) continue; else resultGeneratedHeaders.append(header, sourceGeneratedHeaders.headers.get(header)); @@ -95,6 +99,9 @@ public class MergeTask extends AbstractTask { this.fromTask.setFinal(false); this.toTask.updateGenerated(generatedResult); + printOutput("\tMERGE RESULT ::"); + printOutput(generatedResult.getObject().toString()); + // prevent building result of this task this.generatedResult = null; diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/ObjectDataResolver.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/ObjectDataResolver.java index 519659e..21ccaf0 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/ObjectDataResolver.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/ObjectDataResolver.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producer-core * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/ObjectResolveHelper.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/ObjectResolveHelper.java index 6f8da6d..420279b 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/ObjectResolveHelper.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/ObjectResolveHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producer-core * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/ResolveObjectTask.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/ResolveObjectTask.java index a6c442c..ee83dad 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/ResolveObjectTask.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/ResolveObjectTask.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producer-core * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/ResolveRefTask.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/ResolveRefTask.java index c5f9dfc..f427b77 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/ResolveRefTask.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/ResolveRefTask.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/AbstractMergeProcessor.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/AbstractMergeProcessor.java index ec947e6..2b2ba68 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/AbstractMergeProcessor.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/AbstractMergeProcessor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producer-core * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/BlueprintMergeProcessor.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/BlueprintMergeProcessor.java index 4618cba..6cb62d4 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/BlueprintMergeProcessor.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/BlueprintMergeProcessor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producer-core * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,8 +19,19 @@ */ package ru.entaxy.platform.core.producer.executor.generationmodel.merge; +import java.io.IOException; +import java.io.InputStream; +import java.net.URL; +import java.nio.charset.StandardCharsets; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; +import java.util.Map.Entry; +import org.osgi.framework.Bundle; +import org.osgi.service.component.ComponentContext; +import org.osgi.service.component.annotations.Activate; import org.osgi.service.component.annotations.Component; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -28,24 +39,74 @@ import org.w3c.dom.Document; import org.w3c.dom.Node; import org.w3c.dom.NodeList; +import com.google.gson.Gson; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; + import ru.entaxy.esb.platform.runtime.base.connecting.generator.Generated; +import ru.entaxy.platform.base.support.CommonUtils; +import ru.entaxy.platform.base.support.JSONUtils; import ru.entaxy.platform.base.support.xml.CommonXMLUtils; import ru.entaxy.platform.core.producer.executor.generationmodel.merge.MergingMap.Mapping; +import ru.entaxy.platform.core.producer.executor.support.EntaxyObjectPropertiesHelper; @Component(service = MergeProcessor.class, immediate = true) @MergingMap(mappings = { - @Mapping(source = Generated.GENERATED_TYPE_BLUEPRINT_FRAGMENT, targets = {Generated.GENERATED_TYPE_BLUEPRINT}) + @Mapping(source = Generated.GENERATED_TYPE_BLUEPRINT_FRAGMENT + , targets = {Generated.GENERATED_TYPE_BLUEPRINT, Generated.GENERATED_TYPE_BLUEPRINT_FRAGMENT}) }) public class BlueprintMergeProcessor extends AbstractMergeProcessor { private static final Logger log = LoggerFactory.getLogger(BlueprintMergeProcessor.class); + public static final String FRAGMENT_NAME = "fragment"; + public static final String FRAGMENT_START = "<" + FRAGMENT_NAME + ">"; + public static final String FRAGMENT_END = ""; + + protected MergeProcessor defaultProcessor; + + @Activate + public void activate(ComponentContext componentContext) { + Bundle bundle = componentContext.getBundleContext().getBundle(); + URL url = bundle.getEntry("/config/BlueprintMergeProcessor.json"); + defaultProcessor = new MergeProcessor(); + try { + defaultProcessor.load(url.openStream()); + } catch (Exception e) { + log.error("Error loading configuration", e); + defaultProcessor.loadDefaults(); + } + } + @Override public Generated merge(Generated source, Generated target, Map config) { + MergeProcessor currentProcessor; + + String mergeConfig = config==null + ?"" + :config.getOrDefault("merge.config", "").toString(); + if (CommonUtils.isValid(mergeConfig)) { + currentProcessor = new MergeProcessor(); + try { + currentProcessor.load(mergeConfig); + } catch (Exception e) { + log.error("Invalid merge.config: \n" + mergeConfig, e); + currentProcessor = defaultProcessor.createCopy(); + } + } else { + currentProcessor = defaultProcessor.createCopy(); + } + NodeList sourceNodes = null; if (source.getType().equals(Generated.GENERATED_TYPE_BLUEPRINT_FRAGMENT)) { - String toParse = "" + source.getObject().toString() + ""; + // remove if present + String sourceValue = source.getObject().toString().trim(); + if (sourceValue.startsWith(""); + sourceValue = sourceValue.substring(index+2); + } + String toParse = FRAGMENT_START + sourceValue + FRAGMENT_END; try { Document sourceDoc = CommonXMLUtils.parseString(true, toParse); sourceNodes = sourceDoc.getFirstChild().getChildNodes(); @@ -60,52 +121,568 @@ public class BlueprintMergeProcessor extends AbstractMergeProcessor { if ((sourceNodes == null) || (sourceNodes.getLength()==0)) return target; + if (target.getType().equals(Generated.GENERATED_TYPE_BLUEPRINT)) { + return mergeToBlueprint(sourceNodes, source, target, currentProcessor); + } + + if (target.getType().equals(Generated.GENERATED_TYPE_BLUEPRINT_FRAGMENT)) { + return mergeToFragment(sourceNodes, source, target, currentProcessor); + } + + return null; + } + + protected Generated mergeToBlueprint(NodeList sourceNodes, Generated source, Generated target, MergeProcessor currentProcessor) { Document targetDoc = null; Node targetNode = null; Node targetNodeBefore = null; - if (target.getType().equals(Generated.GENERATED_TYPE_BLUEPRINT)) { - try { - targetDoc = CommonXMLUtils.parseString(true, target.getObject().toString()); - targetNode = targetDoc.getFirstChild(); - - NodeList manifests = targetDoc.getElementsByTagName("manifest"); - for (int i=0; i if present + String targetValue = target.getObject().toString().trim(); + if (targetValue.startsWith(""); + targetValue = targetValue.substring(index+2); + } + String toParse = FRAGMENT_START + targetValue + FRAGMENT_END; + + Document targetDoc = null; + + try { + targetDoc = CommonXMLUtils.parseString(true, toParse); + for (int i=0; i processedNodes = new ArrayList<>(); + + public void load(InputStream inputStream) throws IOException { + log.info("loading config"); + String text = new String(inputStream.readAllBytes(), StandardCharsets.UTF_8); + inputStream.close(); + load(text); + } + + public void loadDefaults() { + load(DEFAULT_CONFIG); + } + + public void load(String jsonData) { + config.load(JSONUtils.getJsonRootObject(jsonData)); + } + + public MergeProcessor createCopy() { + MergeProcessor result = new MergeProcessor(); + result.config.load(this.config.config); + return result; + } + + public void reset() { + processedNodes.clear(); + } + + public Document getDocument() { + return document; + } + + public void setDocument(Document document) { + this.document = document; + + rootNode = this.document.getFirstChild(); + + NodeList manifests = this.document.getElementsByTagName("manifest"); + for (int i=0; i attributes = new HashMap<>(); + for (String attrName: mergeConfig.unique) { + Node attr = newNode.getAttributes().getNamedItem(attrName); + if (attr == null) + attributes.put(attrName, null); + else + attributes.put(attrName, attr.getNodeValue()); + } + + NodeConflict result = null; + + NodeList testNodes = targetContainerNode.getChildNodes(); + for (int i=0; i attributeEntry: attributes.entrySet()) { + String attrValue = attributeEntry.getValue(); + Node testAttr = item.getAttributes().getNamedItem(attributeEntry.getKey()); + if ((testAttr == null) && (attrValue!=null)) { + found = false; + break; + } + if ((testAttr != null) && (attrValue==null)) { + found = false; + break; + } + if ((testAttr != null) && (attrValue!=null)) { + String testValue = testAttr.getNodeValue(); + if (testValue==null) { + found = false; + break; + } + if (testValue.equalsIgnoreCase(attrValue)) { + found = true; + } + } + } + if (found) { + result = new NodeConflict(); + result.newNode = newNode; + result.oldNode = item; + result.conflictResolution = + CommonUtils.getValid(mergeConfig.conflict, MergeConfig.CONFLICT_INGORE); + break; + } + } + + return result; + } + + public List mergeNodes(NodeList sourceNodes){ + List result = new ArrayList<>(); + + mergeFilteredNodes(sourceNodes, result); + + return result; + } + + protected void mergeFilteredNodes(NodeList sourceNodes, List toReturn){ + for (int i=0; i unique = new ArrayList<>(); + String conflict; + + public String getTargetNodeName() { + return targetNodeName; + } + + public void setTargetNodeName(String targetNodeName) { + this.targetNodeName = targetNodeName; + } + + public boolean isCreateTargetNode() { + return createTargetNode; + } + + public void setCreateTargetNode(boolean createTargetNode) { + this.createTargetNode = createTargetNode; + } + + public String getTargetNodeXML() { + return targetNodeXML; + } + + public void setTargetNodXMLe(String targetNodeXML) { + this.targetNodeXML = targetNodeXML; + } + + public String getTargetNodeNamespace() { + return targetNodeNamespace; + } + + public void setTargetNodeNamespace(String targetNodeNamespace) { + this.targetNodeNamespace = targetNodeNamespace; + } + + public MERGE_POSITION getPosition() { + return MERGE_POSITION.valueOfLabel(position); + } + + public void setPosition(String position) { + this.position = position; + } + + public boolean isIgnore() { + return ignore; + } + + public void setIgnore(boolean ignore) { + this.ignore = ignore; + } + + public boolean isTransparent() { + return isTransparent; + } + + public void setTransparent(boolean isTransparent) { + this.isTransparent = isTransparent; + } + + public List getUnique() { + return unique; + } + + public void setUnique(List unique) { + this.unique = unique; + } + + public String getConflict() { + return conflict; + } + + public void setConflict(String conflict) { + this.conflict = conflict; + } + + } + } diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/MergeHelper.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/MergeHelper.java index dbccbb2..425b118 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/MergeHelper.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/MergeHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producer-core * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/MergeProcessor.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/MergeProcessor.java index 5a12f08..22f6208 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/MergeProcessor.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/MergeProcessor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producer-core * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/MergingMap.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/MergingMap.java index a2338a1..21c6243 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/MergingMap.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/generationmodel/merge/MergingMap.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producer-core * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/AbstractFactored.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/AbstractFactored.java index 12415fe..1050514 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/AbstractFactored.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/AbstractFactored.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/AbstractItem.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/AbstractItem.java index e1014ea..10d8869 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/AbstractItem.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/AbstractItem.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producer-core * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,18 +21,26 @@ package ru.entaxy.platform.core.producer.executor.objectmodel; import java.util.LinkedList; import java.util.Map; +import java.util.UUID; +import com.google.gson.JsonElement; import com.google.gson.JsonObject; import ru.entaxy.platform.base.support.JSONUtils.ObjectWrapper; public abstract class AbstractItem extends ObjectWrapper { + public static final String OBJECT_UUID = "__uuid__"; + public static final String FACTORED_CONTEXT_KEY = "factoredObjects"; + public String jsonPath = ""; public String relativePath = ""; public JsonObject origin; public FactoredObject definedIn = null; + + protected String uuid = null; + protected ObjectModel objectModel; protected AbstractItem(ObjectModel objectModel) { @@ -62,5 +70,23 @@ public abstract class AbstractItem extends ObjectWrapper { public void wrap(JsonObject object, Map context, String path) { this.origin = object; this.jsonPath = path; + if (this.origin.has(OBJECT_UUID)) { + JsonElement je = this.origin.get(OBJECT_UUID); + if (je.isJsonPrimitive()) + if (je.getAsJsonPrimitive().isString()) + this.uuid = je.getAsJsonPrimitive().getAsString(); + } + if (this.uuid == null) { + this.uuid = UUID.randomUUID().toString(); + this.origin.addProperty(OBJECT_UUID, this.uuid); + } } + + public String getUuid() { + return uuid; + } + + public void updateFromOrigin() { + + } } diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/Calculation.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/Calculation.java index 641a26f..ceb4b1b 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/Calculation.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/Calculation.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producer-core * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,43 +26,80 @@ import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import com.google.gson.JsonElement; import com.google.gson.JsonObject; +import ru.entaxy.platform.base.objects.factory.EntaxyFactory; +import ru.entaxy.platform.base.support.CommonUtils; import ru.entaxy.platform.base.support.JSONUtils; +import ru.entaxy.platform.base.support.osgi.OSGIUtils; +import ru.entaxy.platform.core.producer.api.EntaxyProducerService; public class Calculation extends AbstractItem { + private static final Logger log = LoggerFactory.getLogger(Calculation.class); + // TODO move const to EntaxyObject - public static final String FIELD_IS_CALCULATED = "isCalculated"; + public static final String FIELD_IS_CALCULATED = "isCalculated"; + + public static final String OWNER_PREFIX = "#OWNER"; + public static final String OWNER_OF_TYPE_PREFIX = "#OWNER_OF_TYPE"; + public static final String FACTORY_PREFIX = "#FACTORY"; + public static final String TYPE_DATA_PREFIX = "#TYPEINFO"; + + public static final String OWNER_TOKEN = "#OWNER#"; + public static final String FACTORY_TOKEN = "#FACTORY#"; + public static final String TYPE_DATA_TOKEN = "#TYPEINFO#"; public static final Object NOT_ENOUGH_DATA = new Object(); public static boolean isCalculated(JsonObject jsonObject) { - if (!jsonObject.has(FIELD_IS_CALCULATED)) - return false; - try { - return jsonObject.get(FIELD_IS_CALCULATED).getAsBoolean(); - } catch (Exception e) { - return false; + boolean result = false; + + // old-style calculated + if (jsonObject.has(FIELD_IS_CALCULATED)) + try { + result = jsonObject.get(FIELD_IS_CALCULATED).getAsBoolean(); + } catch (Exception e) { + // return false; + } + + // new-style calculated + if (jsonObject.has(EntaxyFactory.CONFIGURATION.DIRECTIVES.CALCULATED)) { + result = jsonObject.get(EntaxyFactory.CONFIGURATION.DIRECTIVES.CALCULATED).isJsonObject(); } + return result; } protected ExpressionCalculation expressionCalculation; + protected String targetPath; + protected boolean removeResolved = false; + + protected boolean lazy = true; + public Calculation(ObjectModel objectModel) { super(objectModel); } @Override public void wrap(JsonObject object, Map context, String path) { - if (!ExpressionCalculation.isExpressionCalculation(object)) + + JsonObject content = object; + if (object.has(EntaxyFactory.CONFIGURATION.DIRECTIVES.CALCULATED)) + content = object.get(EntaxyFactory.CONFIGURATION.DIRECTIVES.CALCULATED).getAsJsonObject(); + + if (!ExpressionCalculation.isExpressionCalculation(content)) return; super.wrap(object, context, path); + this.expressionCalculation = new ExpressionCalculation(); - this.expressionCalculation.init(object); + this.expressionCalculation.init(content); AbstractFactored contextOwner = AbstractFactored.getContextOwner(context); if (contextOwner instanceof FactoredObject) @@ -71,26 +108,98 @@ public class Calculation extends AbstractItem { contextOwner.addInternal(this); computeRelativePath(contextOwner.jsonPath); + + if (content.has("targetPath")) { + JsonElement tp = content.get("targetPath"); + if (tp.isJsonNull()) { + this.targetPath = this.relativePath; + } else { + this.targetPath = tp.getAsString(); + } + } else { + this.targetPath = this.relativePath; + } + + if (content.has("removeResolved")) + try { + this.removeResolved = content.get("removeResolved").getAsBoolean(); + } catch (Exception e) { + // NOOP + } + + if (content.has("lazy")) + try { + this.lazy = content.get("lazy").getAsBoolean(); + } catch (Exception e) { + // NOOP + } + + + // System.out.println("\n\n===>>>> [CALCULATION] CREATED [" + contextOwner.factoryId + "/" + this.relativePath + "]"); + } + public Object calculate(ObjectModel objectModel) { + if (this.definedIn == null) + return null; + return calculate(objectModel, this.definedIn); + } public Object calculate(ObjectModel objectModel, FactoredObject factoredObject) { return this.expressionCalculation.calculate(objectModel, factoredObject); } + public String getTargetPath() { + return targetPath; + } + + public boolean isRemoveResolved() { + return removeResolved; + } + + public boolean isLazy() { + return lazy; + } + public static class ExpressionCalculation { // TODO move const to EntaxyObject - public static final String ATTR_EXPRESSION = "expression"; + public static final String ATTR_EXPRESSION = "expression"; + + public static final String ATTR_RESULT_TYPE = "resultType"; + + public static final String ATTR_ALLOW_OBJECTS = "allowObjects"; + public static final String ATTR_ALLOW_ARRAYS = "allowArrays"; + public static final String ATTR_ALLOW_PRIMITIVES = "allowPrimitives"; + public static final String ATTR_ALLOW_NULLS = "allowNulls"; protected static final Object TOKEN_NOT_FOUND = new Object(); + protected static final Object RESULT_NOT_ALLOWED = new Object(); + + protected static final RESULT_TYPE DEFAULT_RESULT_TYPE = RESULT_TYPE.STRING; + + public enum RESULT_TYPE { + STRING, + LIST, + LIST_OR_SINGLE, + MAP; + } JsonObject jsonObject; String expression; + String resultTypeValue = "String"; + + boolean allowObjects = true; + boolean allowArrays = true; + boolean allowPrimitives = true; + boolean allowNulls = false; + List toResolve = new ArrayList<>(); Map resolved = new HashMap<>(); + protected RESULT_TYPE resultType = DEFAULT_RESULT_TYPE; + public static boolean isExpressionCalculation(JsonObject jsonObject) { return jsonObject.has(ATTR_EXPRESSION); } @@ -98,6 +207,33 @@ public class Calculation extends AbstractItem { public void init(JsonObject jsonObject) { this.jsonObject = jsonObject; this.expression = jsonObject.get(ATTR_EXPRESSION).getAsString(); + if (jsonObject.has(ATTR_RESULT_TYPE)) { + this.resultTypeValue = jsonObject.get(ATTR_RESULT_TYPE).getAsString(); + if (CommonUtils.isValid(resultTypeValue)) { + if (RESULT_TYPE.valueOf(this.resultTypeValue.toUpperCase()) != null) + this.resultType = RESULT_TYPE.valueOf(this.resultTypeValue.toUpperCase()); + } + } + try { + allowObjects = jsonObject.get(ATTR_ALLOW_OBJECTS).getAsBoolean(); + } catch (Exception e) { + // NOOP + } + try { + allowArrays = jsonObject.get(ATTR_ALLOW_ARRAYS).getAsBoolean(); + } catch (Exception e) { + // NOOP + } + try { + allowPrimitives = jsonObject.get(ATTR_ALLOW_PRIMITIVES).getAsBoolean(); + } catch (Exception e) { + // NOOP + } + try { + allowNulls = jsonObject.get(ATTR_ALLOW_NULLS).getAsBoolean(); + } catch (Exception e) { + // NOOP + } Pattern pattern = Pattern.compile("\\$\\{.+?\\}"); Matcher matcher = pattern.matcher(this.expression); while (matcher.find()) { @@ -111,7 +247,7 @@ public class Calculation extends AbstractItem { for (String expr: toResolve) { if (!resolved.containsKey(expr)) { Object result = resolve(expr, objectModel, factoredObject); - if (!TOKEN_NOT_FOUND.equals(result)) { + if (!TOKEN_NOT_FOUND.equals(result) && !RESULT_NOT_ALLOWED.equals(result)) { resolved.put(expr, result); } } @@ -124,28 +260,176 @@ public class Calculation extends AbstractItem { } public Object doCalculate() { - String result = expression; - for (Entry entry: resolved.entrySet()) { - Object value = entry.getValue(); - String val = value==null?"":value.toString(); - result = result.replace("${" + entry.getKey() + "}", val); + String expr = expression; + + Object result = null; + List list = new ArrayList<>(); + + switch (this.resultType) { + case LIST: + list.addAll(resolved.values()); + result = list; + break; + case LIST_OR_SINGLE: + list.addAll(resolved.values()); + result = list; + if (list.size()==1) + result = list.get(0); + break; + case MAP: + // TODO + break; + default: + for (Entry entry: resolved.entrySet()) { + Object value = entry.getValue(); + String val = value==null?"":value.toString(); + expr = expr.replace("${" + entry.getKey() + "}", val); + } + result = expr; + break; } - return result; - } - - public Object resolve(String token, ObjectModel objectModel, FactoredObject factoredObject) { - JsonElement result = findElement(factoredObject.origin, token); - if (result == null) - return TOKEN_NOT_FOUND; - return JSONUtils.element2object(result); - } - - public JsonElement findElement(JsonObject jsonObject, String pathFragment) { - JsonElement result = findElement(jsonObject, pathFragment, ""); return result; } + + protected boolean startsWithOwnerPrefix(String token) { + if (!CommonUtils.isValid(token)) + return false; + return token.startsWith(OWNER_PREFIX) + || token.startsWith(OWNER_OF_TYPE_PREFIX); + } + + public Object resolve(String token, ObjectModel objectModel, FactoredObject factoredObject) { + FactoredObject currentObject = factoredObject; + String currentToken = token; + + while (startsWithOwnerPrefix(currentToken) && currentObject!=null) { + int ind = currentToken.substring(1).indexOf("#."); + String subtoken; + if (ind < 0) { + subtoken = currentToken; + currentToken = ""; + } else { + subtoken = currentToken.substring(0, ind+2); + currentToken = currentToken.substring(ind+3); + } + if (Calculation.OWNER_TOKEN.equals(subtoken)) { + currentObject = currentObject.getOwnerObject(); + } else + if (subtoken.startsWith(Calculation.OWNER_OF_TYPE_PREFIX)) { + int i1 = subtoken.indexOf(':'); + if (i1<0) { + log.warn("Incorrect expression: [{}]", subtoken); + break; + } + String typeToFind = subtoken.substring(i1+1, subtoken.length()-1); + + while (currentObject != null) { + currentObject = currentObject.getOwnerObject(); + if (currentObject != null) + if (typeToFind.equals(currentObject.getObjectType())) + break; + } + + } else break; + } + if (currentObject == null) + return TOKEN_NOT_FOUND; + if (!CommonUtils.isValid(currentToken)) + return TOKEN_NOT_FOUND; + JsonObject jsonObject = currentObject.origin; + if (currentToken.startsWith(FACTORY_TOKEN)) { + String factoryId = currentObject.factoryId; + try { + EntaxyProducerService entaxyProducerService = OSGIUtils.services() + .ofClass(EntaxyProducerService.class).get(); + EntaxyFactory f = entaxyProducerService.findFactoryById(factoryId); + jsonObject = JSONUtils.getJsonRootObject(f.getJsonConfiguration()); + currentToken = currentToken.substring(Calculation.FACTORY_TOKEN.length()); + if (currentToken.startsWith(".")) + currentToken = currentToken.substring(1); + + if (currentToken.startsWith(TYPE_DATA_TOKEN)) { + JsonElement je = jsonObject.get(f.getType()); + if ((je != null) && je.isJsonObject() ) + jsonObject = je.getAsJsonObject(); + else + jsonObject = null; + + currentToken = currentToken.substring(Calculation.TYPE_DATA_TOKEN.length()); + if (currentToken.startsWith(".")) + currentToken = currentToken.substring(1); + } + + } catch (Exception e) { + return TOKEN_NOT_FOUND; + } + } + JsonElement result = null; + if (jsonObject != null) + if (CommonUtils.isValid(currentToken)) + result = findElement(jsonObject, currentToken); + else + result = jsonObject; + + if (result == null) + return TOKEN_NOT_FOUND; + if (!valueIsAllowed(result)) + return RESULT_NOT_ALLOWED; + + + return JSONUtils.element2object(result); + } + + protected boolean valueIsAllowed(JsonElement value) { + if (value.isJsonNull() && !allowNulls) + return false; + if (value.isJsonObject()) + if (!allowObjects) + return false; + else { + if (value.getAsJsonObject().has(EntaxyFactory.CONFIGURATION.DIRECTIVES.CALCULATED)) + return false; + } + if (value.isJsonArray() && !allowArrays) + return false; + if (value.isJsonPrimitive() && !allowPrimitives) + return false; + return true; + } + + public JsonElement findElement(JsonObject jsonObject, String pathFragment) { + JsonElement result = null; + if (pathFragment.startsWith("?.")) { + result = findElement(jsonObject, pathFragment.substring(2), ""); + } else { + result = getElement(jsonObject, pathFragment); + } + + return result; + } + public JsonElement getElement(JsonObject jsonObject, String pathFragment) { + int ind = pathFragment.indexOf("."); + String currentFragment; + String newFragment; + if (ind > 0) { + currentFragment = pathFragment.substring(0, ind); + newFragment = pathFragment.substring(ind+1); + } else { + currentFragment = pathFragment; + newFragment = null; + } + if (!jsonObject.has(currentFragment)) + return null; + JsonElement je = jsonObject.get(currentFragment); + if (newFragment == null) + return je; + if (!je.isJsonObject()) + return null; + return getElement(je.getAsJsonObject(), newFragment); + } + public JsonElement findElement(JsonObject jsonObject, String pathFragment, String parentPath) { for (Entry entry: jsonObject.entrySet()) { diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/FactoredObject.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/FactoredObject.java index 972208b..6b6fe2b 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/FactoredObject.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/FactoredObject.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -23,6 +23,7 @@ import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.UUID; +import java.util.stream.Collectors; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -31,6 +32,7 @@ import com.google.gson.JsonArray; import com.google.gson.JsonElement; import com.google.gson.JsonObject; +import ru.entaxy.platform.base.objects.EntaxyObject; import ru.entaxy.platform.base.objects.EntaxyObject.FIELDS; @@ -39,7 +41,9 @@ public class FactoredObject extends AbstractFactored { private static final Logger log = LoggerFactory.getLogger(FactoredObject.class); public static String EMBEDDED_FIELD = "##embedded"; - + public static final String IGNORE_SECTION = "##ignore"; + + public static String IS_EMBEDDED_FIELD = "isEmbedded"; public List dependsOn = new ArrayList<>(); @@ -96,6 +100,11 @@ public class FactoredObject extends AbstractFactored { this.scope = fo.scope; fo.dependsOn(this); this.definedIn = fo; + if ("#OWNER#".equals(this.factoryId)) { + this.factoryId = fo.factoryId; + this.origin.remove(EntaxyObject.FIELDS.FACTORY_ID); + this.origin.addProperty(EntaxyObject.FIELDS.FACTORY_ID, this.factoryId); + } } log.debug("\t EFFECTIVE SCOPE :: " + this.scope); objectModel.addObject(this); @@ -158,4 +167,26 @@ public class FactoredObject extends AbstractFactored { this.origin.addProperty(IS_EMBEDDED_FIELD, isEmbedded); } + public FactoredObject getOwnerObject() { + if (this.definedIn != null) + return this.definedIn; + if (this.isEmbedded) { + List refs = this.objectModel.refs.stream() + .filter(r->r.isLink) + .filter(r->r.targetObject==this) + .collect(Collectors.toList()); + if (!refs.isEmpty()) + return refs.get(0).definedIn; + } + // try to find refs with 'isDefinitionOrigin' set to 'true' + List refs = this.objectModel.refs.stream() + .filter(r->r.isDefinitionOrigin()) + .filter(r->r.targetObject==this) + .collect(Collectors.toList()); + if (!refs.isEmpty()) + return refs.get(0).definedIn; + + return null; + } + } diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/FactoredObjectProxy.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/FactoredObjectProxy.java index b14d0e2..264b807 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/FactoredObjectProxy.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/FactoredObjectProxy.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producer-core * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/FactoredObjectRef.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/FactoredObjectRef.java index bd19a1b..492dc16 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/FactoredObjectRef.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/FactoredObjectRef.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -34,14 +34,18 @@ public class FactoredObjectRef extends AbstractFactored { public static String IS_EXTERNAL_FIELD = "isExternal"; public static String TARGET_ID_FIELD = "targetId"; + public static String TARGET_UUID_FIELD = "targetUuid"; public static String TARGET_TYPE_FIELD = "targetType"; public static String TARGET_VALUE_FIELD = "targetValue"; public static String IS_RESOLVED_FIELD = "isResolved"; + public static String RESOLVE_ALWAYS_FIELD = "resolveAlways"; public static String IS_LINK = "isLink"; + public static String IS_DEFINITION_ORIGIN = "isDefinitionOrigin"; protected FactoredObject targetObject = null; protected String targetId = ""; + protected String targetUuid = ""; protected String targetType = ""; protected boolean isExternal = true; @@ -49,6 +53,8 @@ public class FactoredObjectRef extends AbstractFactored { protected boolean isBackRef = false; protected boolean refByValueOnly = false; protected boolean isLink = false; + protected boolean resolveAlways = false; + protected boolean isDefinitionOrigin = false; public FactoredObjectRef (ObjectModel objectModel) { super(objectModel); @@ -56,10 +62,12 @@ public class FactoredObjectRef extends AbstractFactored { this.origin.addProperty(FIELDS.IS_REF, true); this.origin.addProperty(IS_EXTERNAL_FIELD, false); this.origin.addProperty(TARGET_ID_FIELD, getTargetId()); + this.origin.addProperty(TARGET_UUID_FIELD, getTargetUuid()); this.origin.addProperty(TARGET_TYPE_FIELD, getTargetType()); this.origin.addProperty(FIELDS.FACTORY_ID, this.factoryId); this.origin.addProperty(FIELDS.SCOPE, this.scope); this.origin.addProperty(IS_RESOLVED_FIELD, this.isResolved); + this.origin.addProperty(RESOLVE_ALWAYS_FIELD, this.resolveAlways); this.origin.addProperty(FIELDS.IS_BACK_REF, this.isBackRef); this.origin.addProperty(IS_LINK, false); } @@ -81,10 +89,12 @@ public class FactoredObjectRef extends AbstractFactored { this.origin.addProperty(FIELDS.IS_REF, true); this.origin.addProperty(IS_EXTERNAL_FIELD, false); this.origin.addProperty(TARGET_ID_FIELD, getTargetId()); + this.origin.addProperty(TARGET_UUID_FIELD, getTargetUuid()); this.origin.addProperty(TARGET_TYPE_FIELD, getTargetType()); this.origin.addProperty(FIELDS.FACTORY_ID, this.factoryId); this.origin.addProperty(FIELDS.SCOPE, this.scope); this.origin.addProperty(IS_RESOLVED_FIELD, this.isResolved); + this.origin.addProperty(RESOLVE_ALWAYS_FIELD, this.resolveAlways); this.origin.addProperty(FIELDS.IS_BACK_REF, this.isBackRef); this.origin.addProperty(IS_LINK, this.isLink); @@ -116,12 +126,38 @@ public class FactoredObjectRef extends AbstractFactored { public void wrap(JsonObject object, Map context, String path) { super.wrap(object, context, path); + updateFromObject(object); + + AbstractFactored contextOwner = getContextOwner(context); + if ((contextOwner != null) && (contextOwner instanceof FactoredObject)) { + FactoredObject fo = (FactoredObject)contextOwner; + log.debug("\t IN CONTEXT :: " + fo.factoryId + "[" + fo.jsonPath + "]"); + computeRelativePath(fo.jsonPath); + if (null == this.ownScope || this.ownScope.isEmpty()) + this.scope = fo.scope; + this.definedIn = fo; + } + + + objectModel.addRef(this); + } + + @Override + public void updateFromOrigin() { + super.updateFromOrigin(); + updateFromObject(origin); + } + + protected void updateFromObject(JsonObject object) { if (object.has(TARGET_ID_FIELD)) this.targetId = object.get(TARGET_ID_FIELD).getAsString(); + if (object.has(TARGET_UUID_FIELD)) + this.targetUuid = object.get(TARGET_UUID_FIELD).getAsString(); +/* if (object.has(TARGET_VALUE_FIELD)) - this.targetId = object.get(TARGET_VALUE_FIELD).getAsString(); - + this.targetValue = object.get(TARGET_VALUE_FIELD).getAsString(); +*/ if (object.has(TARGET_TYPE_FIELD)) this.targetType = object.get(TARGET_TYPE_FIELD).getAsString(); @@ -139,6 +175,20 @@ public class FactoredObjectRef extends AbstractFactored { } + if (object.has(RESOLVE_ALWAYS_FIELD)) + try{ + this.resolveAlways = object.get(RESOLVE_ALWAYS_FIELD).getAsBoolean(); + } catch (Exception e) { + + } + + if (object.has(IS_DEFINITION_ORIGIN)) + try{ + this.isDefinitionOrigin = object.get(IS_DEFINITION_ORIGIN).getAsBoolean(); + } catch (Exception e) { + + } + if (object.has(FIELDS.IS_BACK_REF)) try{ this.isBackRef = object.get(FIELDS.IS_BACK_REF).getAsBoolean(); @@ -162,20 +212,8 @@ public class FactoredObjectRef extends AbstractFactored { } - AbstractFactored contextOwner = getContextOwner(context); - if ((contextOwner != null) && (contextOwner instanceof FactoredObject)) { - FactoredObject fo = (FactoredObject)contextOwner; - log.debug("\t IN CONTEXT :: " + fo.factoryId + "[" + fo.jsonPath + "]"); - computeRelativePath(fo.jsonPath); - if (null == this.ownScope || this.ownScope.isEmpty()) - this.scope = fo.scope; - this.definedIn = fo; - } - - - objectModel.addRef(this); } - + public boolean isBackRef() { return isBackRef; } @@ -194,6 +232,14 @@ public class FactoredObjectRef extends AbstractFactored { this.origin.addProperty(IS_RESOLVED_FIELD, this.isResolved); } + public boolean isResolveAlways() { + return resolveAlways; + } + + public void setResolveAlways(boolean resolveAlways) { + this.resolveAlways = resolveAlways; + } + public void setBackRef(boolean isBaskRef) { this.isBackRef = isBaskRef; this.origin.remove(FIELDS.IS_BACK_REF); @@ -216,6 +262,14 @@ public class FactoredObjectRef extends AbstractFactored { return isLink; } + public boolean isDefinitionOrigin() { + return isDefinitionOrigin; + } + + public void setDefinitionOrigin(boolean isDefinitionOrigin) { + this.isDefinitionOrigin = isDefinitionOrigin; + } + public boolean isRefByValueOnly() { return refByValueOnly; } @@ -230,6 +284,10 @@ public class FactoredObjectRef extends AbstractFactored { return targetObject.getObjectId(); } + public String getTargetUuid() { + return targetUuid; + } + public String getTargetType() { if (targetObject == null) return targetType; @@ -244,6 +302,7 @@ public class FactoredObjectRef extends AbstractFactored { if (this.targetObject != null) this.targetObject.references.remove(this); this.targetObject = targetObject; + this.targetUuid = this.targetObject.getUuid(); this.targetObject.references.add(this); if (this.origin == null) log.debug("ORIGIN IS NULL!!!"); diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/FactoryChecker.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/FactoryChecker.java index 9e4e9eb..1c47ff7 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/FactoryChecker.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/FactoryChecker.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/ObjectModel.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/ObjectModel.java index a986da1..9287c5f 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/ObjectModel.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/objectmodel/ObjectModel.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,6 +22,7 @@ package ru.entaxy.platform.core.producer.executor.objectmodel; import java.util.ArrayList; import java.util.HashMap; import java.util.List; +import java.util.Map.Entry; import java.util.stream.Collectors; import org.slf4j.Logger; @@ -81,7 +82,9 @@ public class ObjectModel { .collect(Collectors.toList()); for (FactoredObjectRef ref: originRefs) { String targetId = ref.getTargetId(); - List fos = this.objects.stream().filter(fo -> fo.getObjectId().equals(targetId)) + String targetUuid = ref.getTargetUuid(); + List fos = this.objects.stream() + .filter(fo -> (fo.getObjectId().equals(targetId)) || fo.getUuid().equals(targetUuid)) .collect(Collectors.toList()); if (fos.isEmpty()) { @@ -225,6 +228,19 @@ public class ObjectModel { continue; } */ result.add(fo.origin); + + if (fo.origin.has("refConfig") && fo.origin.get("refConfig").isJsonObject()) { + JsonObject refConfig = fo.origin.get("refConfig").getAsJsonObject(); + for (Entry entry: refConfig.entrySet()) { + if (objectRef.origin.has(entry.getKey())) + objectRef.origin.remove(entry.getKey()); + objectRef.origin.add(entry.getKey(), entry.getValue().deepCopy()); + } + objectRef.updateFromOrigin(); + } + + objectRef.setTraverseMap(JSONUtils.element2map(objectRef.origin), null); + log.debug("REPLACING :: " + fo.getObjectId()); JSONUtils.replaceValue(factoredObject.origin, fo.relativePath, objectRef.origin); log.debug("TOTAL REFS :: " + refs.size()); @@ -234,6 +250,27 @@ public class ObjectModel { } else { FactoredObjectRef objectRef = new FactoredObjectRef(this, fo); result.add(fo.origin); + + // keep definedIn attribute in ref + if (fo.definedIn == factoredObject) { + if (objectRef.origin.has(FactoredObjectRef.IS_DEFINITION_ORIGIN)) + objectRef.origin.remove(FactoredObjectRef.IS_DEFINITION_ORIGIN); + objectRef.origin.addProperty(FactoredObjectRef.IS_DEFINITION_ORIGIN, true); + } else { + objectRef.origin.remove(FactoredObjectRef.IS_DEFINITION_ORIGIN); + } + + if (fo.origin.has("refConfig") && fo.origin.get("refConfig").isJsonObject()) { + JsonObject refConfig = fo.origin.get("refConfig").getAsJsonObject(); + for (Entry entry: refConfig.entrySet()) { + if (objectRef.origin.has(entry.getKey())) + objectRef.origin.remove(entry.getKey()); + objectRef.origin.add(entry.getKey(), entry.getValue().deepCopy()); + } + objectRef.updateFromOrigin(); + } + objectRef.setTraverseMap(JSONUtils.element2map(objectRef.origin), null); + JSONUtils.replaceValue(factoredObject.origin, fo.relativePath, objectRef.origin); rootObjects.add(fo); result.addAll(layoutObject(fo, rootObjects)); diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/support/ArtifactList.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/support/ArtifactList.java deleted file mode 100644 index bf33745..0000000 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/support/ArtifactList.java +++ /dev/null @@ -1,33 +0,0 @@ -/*- - * ~~~~~~licensing~~~~~~ - * test-producers - * ========== - * Copyright (C) 2020 - 2022 EmDev LLC - * ========== - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ~~~~~~/licensing~~~~~~ - */ -package ru.entaxy.platform.core.producer.executor.support; - -import java.util.Collections; - -import org.apache.commons.collections4.list.AbstractLinkedList; - -import ru.entaxy.platform.core.artifact.Artifact; - -public class ArtifactList extends AbstractLinkedList { - - public ArtifactList() { - super(Collections.emptyList()); - } -} diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/support/ArtifactsHelper.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/support/ArtifactsHelper.java deleted file mode 100644 index 56b24be..0000000 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/support/ArtifactsHelper.java +++ /dev/null @@ -1,62 +0,0 @@ -/*- - * ~~~~~~licensing~~~~~~ - * test-producers - * ========== - * Copyright (C) 2020 - 2022 EmDev LLC - * ========== - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ~~~~~~/licensing~~~~~~ - */ -package ru.entaxy.platform.core.producer.executor.support; - -import org.osgi.service.component.ComponentContext; -import org.osgi.service.component.annotations.Activate; -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.platform.core.artifact.service.ArtifactService; - -@Component(immediate = true) -public class ArtifactsHelper { - - protected static ArtifactsHelper instance = null; - - public static ArtifactsHelper getInstance() { - return ArtifactsHelper.instance; - } - - protected ArtifactService artifactService; - - @Activate - public void activate(ComponentContext componentContext) { - // Artifacts.registerSupport(Blueprint.class); - ArtifactsHelper.instance = this; - } - - public ArtifactService getArtifactService() { - return artifactService; - } - - @Reference(unbind = "removeArtifactService", cardinality = ReferenceCardinality.MANDATORY, collectionType = CollectionType.SERVICE) - public void setArtifactService(ArtifactService artifactService) { - this.artifactService = artifactService; - } - - public void removeArtifactService(ArtifactService artifactService) { - this.artifactService = null; - } - - -} diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/support/DeployedArtifactList.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/support/DeployedArtifactList.java deleted file mode 100644 index 087318b..0000000 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/support/DeployedArtifactList.java +++ /dev/null @@ -1,34 +0,0 @@ -/*- - * ~~~~~~licensing~~~~~~ - * test-producers - * ========== - * Copyright (C) 2020 - 2022 EmDev LLC - * ========== - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ~~~~~~/licensing~~~~~~ - */ -package ru.entaxy.platform.core.producer.executor.support; - -import java.util.Collections; - -import org.apache.commons.collections4.list.AbstractLinkedList; - -import ru.entaxy.platform.core.artifact.DeployedArtifact; - -public class DeployedArtifactList extends AbstractLinkedList { - - public DeployedArtifactList() { - super(Collections.emptyList()); - } - -} diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/support/InstallationResultList.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/support/InstallationResultList.java deleted file mode 100644 index b7ad3cc..0000000 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/executor/support/InstallationResultList.java +++ /dev/null @@ -1,34 +0,0 @@ -/*- - * ~~~~~~licensing~~~~~~ - * test-producers - * ========== - * Copyright (C) 2020 - 2022 EmDev LLC - * ========== - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ~~~~~~/licensing~~~~~~ - */ -package ru.entaxy.platform.core.producer.executor.support; - -import java.util.Collections; - -import org.apache.commons.collections4.list.AbstractLinkedList; - -import ru.entaxy.platform.core.artifact.installer.builder.InstallationResult; - -public class InstallationResultList extends AbstractLinkedList { - - public InstallationResultList() { - super(Collections.emptyList()); - } - -} diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/CommonObjectProducer.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/CommonObjectProducer.java index f5e42b3..fa12dbf 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/CommonObjectProducer.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/CommonObjectProducer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -46,13 +46,14 @@ public class CommonObjectProducer extends DefaultProducer implements GenerationP @Override protected void addFields(AbstractFactoryWrapper factoryWrapper) { super.addFields(factoryWrapper); - factoryWrapper.addField( + /*factoryWrapper.addField( (new FieldInfoImpl()) .name(FIELDS.OBJECT_ID) .type("String") .required(true) .immutable(true) ); + */ } @Override @@ -64,6 +65,15 @@ public class CommonObjectProducer extends DefaultProducer implements GenerationP Map publishedFields = getFieldsToPublish(outputType, scope, objectType, objectId); Map dataToPublish = new HashMap<>(); + + if (parameters.containsKey(FIELDS.FIELDS_TO_PUBLISH)) { + Object obj = parameters.get(FIELDS.FIELDS_TO_PUBLISH); + if (obj instanceof Map) { + Map ownData = (Map)obj; + dataToPublish.putAll(ownData); + } + } + for (Entry entry: publishedFields.entrySet()) dataToPublish.put(entry.getKey(), generated.getProperties().get(entry.getValue())); diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/DefaultProducer.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/DefaultProducer.java index 0d4549c..92f3cc8 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/DefaultProducer.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/DefaultProducer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/EntaxyProducerInfo.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/EntaxyProducerInfo.java index d654727..0e2efe2 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/EntaxyProducerInfo.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/EntaxyProducerInfo.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/EntaxyProducerServiceImpl.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/EntaxyProducerServiceImpl.java index 10ed486..5a7bc61 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/EntaxyProducerServiceImpl.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/EntaxyProducerServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,6 +19,7 @@ */ package ru.entaxy.platform.core.producer.impl; +import java.io.File; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -60,6 +61,14 @@ public class EntaxyProducerServiceImpl implements EntaxyProducerService { private static final Logger log = LoggerFactory.getLogger(EntaxyProducerServiceImpl.class); + private static final String LIFECYCLES_FILE_PATH = System.getProperty("karaf.etc") + + File.separator + + "producing.lifecycles.json"; + + protected JsonObject lifecycles = new JsonObject(); + + protected InstructionsHelper instructionsHelper; + protected List producers = new ArrayList<>(); protected Map commandExecutors = new HashMap<>(); @@ -88,6 +97,19 @@ public class EntaxyProducerServiceImpl implements EntaxyProducerService { registerCommand(new Install(this)); registerCommand(new Enrich(this)); registerCommand(new Store(this)); + initLifecycles(); + } + + protected void initLifecycles() { + File lc = new File(LIFECYCLES_FILE_PATH); + if (lc.exists() && lc.canRead()) { + try { + this.lifecycles = JSONUtils.getJsonRootObject(lc.toURI().toURL()); + } catch (Exception e) { + log.warn("Eror reading lifecycles config", e); + } + } + this.instructionsHelper = new InstructionsHelper(this.lifecycles); } @Override @@ -113,7 +135,10 @@ public class EntaxyProducerServiceImpl implements EntaxyProducerService { @Override public ProducerResult produce(JsonObject configuration, String instructions) { try { - return (new ProducingExecutor(configuration, instructions,this)).execute(); + return (new ProducingExecutor(configuration + , instructionsHelper.prepareInstructions(instructions) + ,this)) + .execute(); } catch (Exception e) { log.error("Produce failed", e); return ProducerResult.createFailed(e); diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/FieldInfoImpl.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/FieldInfoImpl.java index a0b9870..e3a21e1 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/FieldInfoImpl.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/FieldInfoImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/RefFieldInfoImpl.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/RefFieldInfoImpl.java index 6a9039b..119aa6d 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/RefFieldInfoImpl.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/impl/RefFieldInfoImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/wrapper/AbstractFactoryWrapper.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/wrapper/AbstractFactoryWrapper.java index 9ef38fe..ca27b5f 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/wrapper/AbstractFactoryWrapper.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/wrapper/AbstractFactoryWrapper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,6 +30,9 @@ public abstract class AbstractFactoryWrapper implements EntaxyWrappedFactory { public static interface GenerationProcessor { + String PROP_PROCESSOR_ID = "generation.plugin.id"; + String PROP_FACTORY_TYPE = "generation.factory.type"; + public default void preGenerate(EntaxyWrappedFactory wrappedFactory, String outputType, String scope , String objectType, Map parameters) throws EntaxyFactoryException{ @@ -52,6 +55,7 @@ public abstract class AbstractFactoryWrapper implements EntaxyWrappedFactory { this.generationProcessor = generationProcessor; } + @Deprecated public abstract void addField(FieldInfo fieldInfo); public abstract void addField(String outputType, FieldInfo fieldInfo); diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/wrapper/DefaultFactoryWrapper.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/wrapper/DefaultFactoryWrapper.java index 4fdf939..f62ed3c 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/wrapper/DefaultFactoryWrapper.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/wrapper/DefaultFactoryWrapper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -35,6 +35,7 @@ import org.slf4j.LoggerFactory; import ru.entaxy.esb.platform.runtime.base.connecting.generator.Generated; import ru.entaxy.platform.base.objects.factory.EntaxyFactory; import ru.entaxy.platform.base.objects.factory.EntaxyFactoryException; +import ru.entaxy.platform.base.objects.factory.EntaxyFactoryUtils; import ru.entaxy.platform.core.producer.api.EntaxyWrappedFactory; public class DefaultFactoryWrapper extends AbstractFactoryWrapper implements EntaxyWrappedFactory { @@ -85,6 +86,11 @@ public class DefaultFactoryWrapper extends AbstractFactoryWrapper implements Ent return origin.getType(); } + @Override + public String getDisplayName() { + return origin.getDisplayName(); + } + @Override public String getDescription() { return origin.getDescription(); @@ -199,29 +205,30 @@ public class DefaultFactoryWrapper extends AbstractFactoryWrapper implements Ent BundleContext bundleContext = FrameworkUtil.getBundle(this.getClass()).getBundleContext(); try { - ServiceReference[] refs = bundleContext.getAllServiceReferences( + List> refs = /*bundleContext.getAllServiceReferences( GenerationProcessor.class.getName() - , "(|(generation.factory.type~=*)(generation.factory.type~=" + getFactoryType() + "))"); + , "(|(generation.factory.type~=*)(generation.factory.type~=" + getFactoryType() + "))");*/ + GenerationProcessorService.getInstance().getProcessorsRefs(this); - log.debug("FOUND SERVICES: " + (refs==null?"0":refs.length)); + log.debug("FOUND SERVICES: " + (refs==null?"0":refs.size())); if (refs == null) return; - for (int i=0; i r: refs) { try { - GenerationProcessor processor = (GenerationProcessor)bundleContext.getService(refs[i]); + GenerationProcessor processor = (GenerationProcessor)bundleContext.getService(r); processor.preGenerate(this, outputType, scope, getFactoryType(), parameters); } catch (Exception e) { } finally { try { - bundleContext.ungetService(refs[i]); + bundleContext.ungetService(r); } catch (Exception e) { log.warn("Error ungetting service", e); } } } - } catch (InvalidSyntaxException e) { + } catch (Exception e) { log.error("Error getting services", e); } @@ -230,29 +237,30 @@ public class DefaultFactoryWrapper extends AbstractFactoryWrapper implements Ent protected void postGenerateWithPlugins(String outputType, String scope, Map parameters, Generated generated) { BundleContext bundleContext = FrameworkUtil.getBundle(this.getClass()).getBundleContext(); try { - ServiceReference[] refs = bundleContext.getAllServiceReferences( + List> refs = /* bundleContext.getAllServiceReferences( GenerationProcessor.class.getName() - , "(|(generation.factory.type~=*)(generation.factory.type~=" + getFactoryType() + "))"); + , "(|(generation.factory.type~=*)(generation.factory.type~=" + getFactoryType() + "))"); */ + GenerationProcessorService.getInstance().getProcessorsRefs(this); - log.debug("FOUND SERVICES: " + (refs==null?"0":refs.length)); + log.debug("FOUND SERVICES: " + (refs==null?"0":refs.size())); if (refs == null) return; - for (int i=0; i r: refs) { try { - GenerationProcessor processor = (GenerationProcessor)bundleContext.getService(refs[i]); + GenerationProcessor processor = (GenerationProcessor)bundleContext.getService(r); processor.postGenerate(this, outputType, scope, getFactoryType(), parameters, generated); } catch (Exception e) { } finally { try { - bundleContext.ungetService(refs[i]); + bundleContext.ungetService(r); } catch (Exception e) { log.warn("Error ungetting service", e); } } } - } catch (InvalidSyntaxException e) { + } catch (Exception e) { log.error("Error getting services", e); } } @@ -262,5 +270,28 @@ public class DefaultFactoryWrapper extends AbstractFactoryWrapper implements Ent return this.origin; } + @Override + public Map getTypeInfo() { + return this.origin.getTypeInfo(); + } + + @Override + public String getJsonConfiguration() { + return EntaxyFactoryUtils.getEffectiveJson(this); + } + @Override + public String getParent() { + return this.origin.getParent(); + } + + @Override + public boolean isAbstract() { + return this.origin.isAbstract(); + } + + @Override + public boolean isDeprecated() { + return this.origin.isDeprecated(); + } } diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/wrapper/FieldWrapper.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/wrapper/FieldWrapper.java index 671d73e..3440e2c 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/wrapper/FieldWrapper.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/wrapper/FieldWrapper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,6 +22,7 @@ package ru.entaxy.platform.core.producer.wrapper; import com.google.gson.JsonObject; import ru.entaxy.platform.base.objects.factory.EntaxyFactory.FieldInfo; +import ru.entaxy.platform.core.producer.impl.EntaxyFactoryDataProcessorService; public class FieldWrapper implements FieldInfo { @@ -63,7 +64,7 @@ public class FieldWrapper implements FieldInfo { @Override public Object getDefaultValue() { - return origin.getDefaultValue(); + return EntaxyFactoryDataProcessorService.getInstance().processDefaultValue(origin.getDefaultValue()); } @Override diff --git a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/wrapper/RefFieldWrapper.java b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/wrapper/RefFieldWrapper.java index 63f03eb..d2ac1e3 100644 --- a/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/wrapper/RefFieldWrapper.java +++ b/platform/runtime/core/object-producing/object-producer-core/src/main/java/ru/entaxy/platform/core/producer/wrapper/RefFieldWrapper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * test-producers * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producing-config-support/pom.xml b/platform/runtime/core/object-producing/object-producing-config-support/pom.xml index 1613c82..a403d79 100644 --- a/platform/runtime/core/object-producing/object-producing-config-support/pom.xml +++ b/platform/runtime/core/object-producing/object-producing-config-support/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime.core object-producing - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.core.object-producing object-producing-config-support diff --git a/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/AddConfigCommand.java b/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/AddConfigCommand.java index 6ccc9b5..e61e74f 100644 --- a/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/AddConfigCommand.java +++ b/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/AddConfigCommand.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producing-config-support * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ConfigObjectDataResolver.java b/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ConfigObjectDataResolver.java index fb1880a..2ac75d9 100644 --- a/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ConfigObjectDataResolver.java +++ b/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ConfigObjectDataResolver.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producing-config-support * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ConfigProcessor.java b/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ConfigProcessor.java index 0e0f596..b1dbc6a 100644 --- a/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ConfigProcessor.java +++ b/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ConfigProcessor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producing-config-support * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ConfigProducer.java b/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ConfigProducer.java index 15bd26a..4c1f374 100644 --- a/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ConfigProducer.java +++ b/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ConfigProducer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producing-config-support * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ObjectConfig.java b/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ObjectConfig.java index 9aaf747..7a34abd 100644 --- a/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ObjectConfig.java +++ b/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ObjectConfig.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producing-config-support * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -128,7 +128,7 @@ public class ObjectConfig { } FieldInfo field = fi.get(); boolean isConfigurable = true; - log.info("\n FIELDNAME:: " + fieldName + " -> " + field.getJsonOrigin()); + log.debug("\n FIELDNAME:: " + fieldName + " -> " + field.getJsonOrigin()); if (field.getJsonOrigin().has(CONFIGURABLE_ATTRIBUTE_NAME)) try { isConfigurable = field.getJsonOrigin().get(CONFIGURABLE_ATTRIBUTE_NAME).getAsBoolean(); diff --git a/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ObjectConfigHelper.java b/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ObjectConfigHelper.java index 4d5f08e..0ac9fdc 100644 --- a/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ObjectConfigHelper.java +++ b/platform/runtime/core/object-producing/object-producing-config-support/src/main/java/ru/entaxy/platform/core/producer/config/ObjectConfigHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * object-producing-config-support * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,8 +19,6 @@ */ package ru.entaxy.platform.core.producer.config; -import java.util.Optional; - import org.osgi.service.component.annotations.Component; import org.osgi.service.component.annotations.Reference; import org.osgi.service.component.annotations.ReferenceCardinality; @@ -47,10 +45,7 @@ public class ObjectConfigHelper { } public EntaxyObject findObject(String objectId, String objectType) { - Optional object = entaxyObjectService.getObjects().stream() - .filter(obj -> (obj.getObjectId().equals(objectId) && obj.getObjectType().equals(objectType))) - .findFirst(); - return object.orElse(null); + return entaxyObjectService.findObject(objectId, objectType); } public boolean isDirectValueOnly(FactoredObjectRef ref) { diff --git a/platform/runtime/core/object-producing/object-producing-config-support/src/main/resources/ru/entaxy/templates/common-config/config-field.ftl b/platform/runtime/core/object-producing/object-producing-config-support/src/main/resources/ru/entaxy/templates/common-config/config-field.ftl index e424408..cd0c5a7 100644 --- a/platform/runtime/core/object-producing/object-producing-config-support/src/main/resources/ru/entaxy/templates/common-config/config-field.ftl +++ b/platform/runtime/core/object-producing/object-producing-config-support/src/main/resources/ru/entaxy/templates/common-config/config-field.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ object-producing-config-support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/object-producing/object-producing-config-support/src/main/resources/ru/entaxy/templates/common-config/init.ftl b/platform/runtime/core/object-producing/object-producing-config-support/src/main/resources/ru/entaxy/templates/common-config/init.ftl index 0ec5df1..7f56f66 100644 --- a/platform/runtime/core/object-producing/object-producing-config-support/src/main/resources/ru/entaxy/templates/common-config/init.ftl +++ b/platform/runtime/core/object-producing/object-producing-config-support/src/main/resources/ru/entaxy/templates/common-config/init.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ object-producing-config-support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -20,7 +20,6 @@ ~~~~~~/licensing~~~~~~ --] - + mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.saxon/${servicemix-saxon-version} + mvn:ru.entaxy.esb.platform.runtime.core.object-producing/object-producer-api/${project.version} mvn:ru.entaxy.esb.platform.runtime.core.object-producing/object-producer-core/${project.version} mvn:ru.entaxy.esb.platform.runtime.core.object-producing/object-producing-shell/${project.version} mvn:ru.entaxy.esb.platform.runtime.core.object-producing/object-producing-management/${project.version} mvn:ru.entaxy.esb.platform.runtime.core.object-producing/object-producing-config-support/${project.version} + mvn:ru.entaxy.esb.platform.runtime.core.object-producing/object-producing-resources-support/${project.version} + + osgi.service;effective:=active;objectClass=ru.entaxy.platform.core.producer.resources.ResourceDataProcessor + + + osgi.service;effective:=active;objectClass=ru.entaxy.platform.core.producer.resources.StringFormatterService + - objects-base - entaxy-artifact-management - entaxy-object-producing + objects-base + entaxy-artifact-management + entaxy-object-producing entaxy-legacy-system-api + mvn:ru.entaxy.esb.platform.runtime.core.objects-implementations.profile-implementation/profile-runtime/${project.version} mvn:ru.entaxy.esb.platform.runtime.core.objects-implementations.profile-implementation/profile-producing/${project.version} mvn:ru.entaxy.esb.platform.runtime.core.objects-implementations.profile-implementation/profile-storage/${project.version} + mvn:ru.entaxy.esb.platform.runtime.core.objects-implementations.connection-implementation/standard-connections-pack/${project.version} mvn:ru.entaxy.esb.platform.runtime.core.objects-implementations.connection-implementation/connection-producing/${project.version} + mvn:ru.entaxy.esb.platform.runtime.core.objects-implementations.connector-implementation/connector-producing/${project.version} + mvn:ru.entaxy.esb.platform.runtime.core.objects-implementations.connector-implementation/standard-connectors-pack/${project.version} + mvn:ru.entaxy.esb.platform.runtime.core.objects-implementations.connector-implementation/connector-storage/${project.version} + mvn:ru.entaxy.esb.platform.runtime.core.objects-implementations.route-implementation/route-producing/${project.version} @@ -100,7 +120,7 @@ - entaxy-init-manager + entaxy-init-manager @@ -202,25 +222,25 @@ cellar - entaxy-management + entaxy-management mvn:ru.entaxy.esb.platform.runtime.core.management/cluster-node-management/${project.version} entaxy-platform-base - entaxy-artifact-management - entaxy-legacy-system-api - entaxy-legacy-connectors - entaxy-legacy-profile-commons - entaxy-legacy-management-connectors - entaxy-legacy-management - entaxy-management + entaxy-artifact-management + entaxy-legacy-system-api + entaxy-legacy-connectors + entaxy-legacy-profile-commons + entaxy-legacy-management-connectors + entaxy-legacy-management + entaxy-management mvn:ru.entaxy.esb.platform.runtime.core.management/profile-management-service-adapters/${project.version} - entaxy-datasources-initializer - entaxy-legacy-basic-auth + entaxy-datasources-initializer + entaxy-legacy-basic-auth @@ -236,4 +256,4 @@ - \ No newline at end of file + diff --git a/platform/runtime/core/src/main/healthcheck/generated/fragments.xml b/platform/runtime/core/src/main/healthcheck/generated/fragments.xml index c9f0dcc..79f9ef1 100644 --- a/platform/runtime/core/src/main/healthcheck/generated/fragments.xml +++ b/platform/runtime/core/src/main/healthcheck/generated/fragments.xml @@ -1,9 +1,9 @@ - - mvn:ru.entaxy.esb.platform.runtime/core/1.8.2.2/cfg/org.apache.felix.hc.generalchecks.HttpRequestsCheck-repositories + + mvn:ru.entaxy.esb.platform.runtime/core/1.8.3/cfg/org.apache.felix.hc.generalchecks.HttpRequestsCheck-repositories - - mvn:ru.entaxy.esb.platform.runtime/core/1.8.2.2/cfg/org.apache.felix.hc.generalchecks.ServicesCheck-connections + + mvn:ru.entaxy.esb.platform.runtime/core/1.8.3/cfg/org.apache.felix.hc.generalchecks.ServicesCheck-connections \ No newline at end of file diff --git a/platform/runtime/core/src/main/healthcheck/org.apache.felix.hc.generalchecks.HttpRequestsCheck-repositories.cfg b/platform/runtime/core/src/main/healthcheck/org.apache.felix.hc.generalchecks.HttpRequestsCheck-repositories.cfg index 5aeac77..a7811e7 100644 --- a/platform/runtime/core/src/main/healthcheck/org.apache.felix.hc.generalchecks.HttpRequestsCheck-repositories.cfg +++ b/platform/runtime/core/src/main/healthcheck/org.apache.felix.hc.generalchecks.HttpRequestsCheck-repositories.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # core # ========== -# Copyright (C) 2020 - 2022 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/platform/runtime/core/src/main/healthcheck/org.apache.felix.hc.generalchecks.ServicesCheck-connections.cfg b/platform/runtime/core/src/main/healthcheck/org.apache.felix.hc.generalchecks.ServicesCheck-connections.cfg index c8d2e50..acd5a44 100644 --- a/platform/runtime/core/src/main/healthcheck/org.apache.felix.hc.generalchecks.ServicesCheck-connections.cfg +++ b/platform/runtime/core/src/main/healthcheck/org.apache.felix.hc.generalchecks.ServicesCheck-connections.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # core # ========== -# Copyright (C) 2020 - 2022 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/cxf-echo/pom.xml b/platform/runtime/modules/cxf-echo/pom.xml index dad9ae8..8e00054 100644 --- a/platform/runtime/modules/cxf-echo/pom.xml +++ b/platform/runtime/modules/cxf-echo/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime modules - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.modules cxf-echo diff --git a/platform/runtime/modules/cxf-echo/src/main/java/ru/entaxy/esb/platform/runtime/modules/echo/CxfEchoServer.java b/platform/runtime/modules/cxf-echo/src/main/java/ru/entaxy/esb/platform/runtime/modules/echo/CxfEchoServer.java index b6089d3..5c622f6 100644 --- a/platform/runtime/modules/cxf-echo/src/main/java/ru/entaxy/esb/platform/runtime/modules/echo/CxfEchoServer.java +++ b/platform/runtime/modules/cxf-echo/src/main/java/ru/entaxy/esb/platform/runtime/modules/echo/CxfEchoServer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * cxf-echo * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/cxf-echo/src/main/resources/OSGI-INF/blueprint/camel-context.xml b/platform/runtime/modules/cxf-echo/src/main/resources/OSGI-INF/blueprint/camel-context.xml index b324091..96dc3d7 100644 --- a/platform/runtime/modules/cxf-echo/src/main/resources/OSGI-INF/blueprint/camel-context.xml +++ b/platform/runtime/modules/cxf-echo/src/main/resources/OSGI-INF/blueprint/camel-context.xml @@ -3,14 +3,12 @@ ~~~~~~licensing~~~~~~ cxf-echo ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - http://www.apache.org/licenses/LICENSE-2.0 - Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. diff --git a/platform/runtime/modules/cxf-echo/src/main/resources/ftl/example.ftl b/platform/runtime/modules/cxf-echo/src/main/resources/ftl/example.ftl index 3f9a1bc..cd8f3a0 100644 --- a/platform/runtime/modules/cxf-echo/src/main/resources/ftl/example.ftl +++ b/platform/runtime/modules/cxf-echo/src/main/resources/ftl/example.ftl @@ -1,9 +1,10 @@ +[#ftl] [#-- ~~~~~~licensing~~~~~~ cxf-echo ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -19,25 +20,4 @@ ~~~~~~/licensing~~~~~~ --] -<#-- - ~~~~~~licensing~~~~~~ - cxf-echo - ========== - Copyright (C) 2020 - 2022 EmDev LLC - ========== - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ~~~~~~/licensing~~~~~~ ---> -{ -"example": "${body}" -} +${body} diff --git a/platform/runtime/modules/cxf-echo/src/main/resources/xslt/example.xsl b/platform/runtime/modules/cxf-echo/src/main/resources/xslt/example.xsl index 96abf35..66daf16 100644 --- a/platform/runtime/modules/cxf-echo/src/main/resources/xslt/example.xsl +++ b/platform/runtime/modules/cxf-echo/src/main/resources/xslt/example.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ cxf-echo ========== - Copyright (C) 2020 - 2022 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -29,10 +29,10 @@ - - + + + - diff --git a/platform/runtime/modules/pom.xml b/platform/runtime/modules/pom.xml index 3cdc2f4..b27dd62 100644 --- a/platform/runtime/modules/pom.xml +++ b/platform/runtime/modules/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform runtime - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime modules diff --git a/platform/runtime/modules/src/main/features/features.xml b/platform/runtime/modules/src/main/features/features.xml index 376bdd0..641e672 100644 --- a/platform/runtime/modules/src/main/features/features.xml +++ b/platform/runtime/modules/src/main/features/features.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ modules ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -37,6 +37,7 @@ + camel-freemarker mvn:ru.entaxy.esb.platform.runtime.modules/cxf-echo/${project.version} diff --git a/platform/runtime/modules/uniform-service/connector/pom.xml b/platform/runtime/modules/uniform-service/connector/pom.xml index 3ea21e7..f1f4c05 100644 --- a/platform/runtime/modules/uniform-service/connector/pom.xml +++ b/platform/runtime/modules/uniform-service/connector/pom.xml @@ -1,11 +1,9 @@ - + ru.entaxy.esb.platform.runtime.modules uniform-service - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/modules/uniform-service/connector/src/main/resources/OSGI-INF/blueprint/camel-context.xml b/platform/runtime/modules/uniform-service/connector/src/main/resources/OSGI-INF/blueprint/camel-context.xml index cabe717..38ed48a 100644 --- a/platform/runtime/modules/uniform-service/connector/src/main/resources/OSGI-INF/blueprint/camel-context.xml +++ b/platform/runtime/modules/uniform-service/connector/src/main/resources/OSGI-INF/blueprint/camel-context.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ connector ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/connector/src/main/resources/template/uniform-service-active-in-connector.ftl b/platform/runtime/modules/uniform-service/connector/src/main/resources/template/uniform-service-active-in-connector.ftl index 50bf75d..8917e96 100644 --- a/platform/runtime/modules/uniform-service/connector/src/main/resources/template/uniform-service-active-in-connector.ftl +++ b/platform/runtime/modules/uniform-service/connector/src/main/resources/template/uniform-service-active-in-connector.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ connector ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/connector/src/main/resources/template/uniform-service-active-out-connector.ftl b/platform/runtime/modules/uniform-service/connector/src/main/resources/template/uniform-service-active-out-connector.ftl index 92441ef..9eff5e2 100644 --- a/platform/runtime/modules/uniform-service/connector/src/main/resources/template/uniform-service-active-out-connector.ftl +++ b/platform/runtime/modules/uniform-service/connector/src/main/resources/template/uniform-service-active-out-connector.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ connector ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/connector/src/main/resources/template/uniform-service-passive-in-connector.ftl b/platform/runtime/modules/uniform-service/connector/src/main/resources/template/uniform-service-passive-in-connector.ftl index 734d919..78fb3f4 100644 --- a/platform/runtime/modules/uniform-service/connector/src/main/resources/template/uniform-service-passive-in-connector.ftl +++ b/platform/runtime/modules/uniform-service/connector/src/main/resources/template/uniform-service-passive-in-connector.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ connector ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/connector/src/main/resources/template/uniform-service-passive-out-connector.ftl b/platform/runtime/modules/uniform-service/connector/src/main/resources/template/uniform-service-passive-out-connector.ftl index e59ef0e..6bc443a 100644 --- a/platform/runtime/modules/uniform-service/connector/src/main/resources/template/uniform-service-passive-out-connector.ftl +++ b/platform/runtime/modules/uniform-service/connector/src/main/resources/template/uniform-service-passive-out-connector.ftl @@ -4,7 +4,7 @@ ~~~~~~licensing~~~~~~ connector ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/pom.xml b/platform/runtime/modules/uniform-service/pom.xml index 9591fd8..4f11108 100644 --- a/platform/runtime/modules/uniform-service/pom.xml +++ b/platform/runtime/modules/uniform-service/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.platform.runtime modules - 1.8.2.2 + 1.8.3 ru.entaxy.esb.platform.runtime.modules uniform-service diff --git a/platform/runtime/modules/uniform-service/src/main/features/features.xml b/platform/runtime/modules/uniform-service/src/main/features/features.xml index cb0c5ac..7eddd1e 100644 --- a/platform/runtime/modules/uniform-service/src/main/features/features.xml +++ b/platform/runtime/modules/uniform-service/src/main/features/features.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ uniform-service ========== - Copyright (C) 2020 - 2022 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/src/main/healthcheck/generated/fragments.xml b/platform/runtime/modules/uniform-service/src/main/healthcheck/generated/fragments.xml index 68783a8..1e88bf4 100644 --- a/platform/runtime/modules/uniform-service/src/main/healthcheck/generated/fragments.xml +++ b/platform/runtime/modules/uniform-service/src/main/healthcheck/generated/fragments.xml @@ -1,5 +1,5 @@ - - mvn:ru.entaxy.esb.platform.runtime.modules/uniform-service/1.8.2.2/cfg/org.apache.felix.hc.generalchecks.HttpRequestsCheck-uniform_service + + mvn:ru.entaxy.esb.platform.runtime.modules/uniform-service/1.8.3/cfg/org.apache.felix.hc.generalchecks.HttpRequestsCheck-uniform_service \ No newline at end of file diff --git a/platform/runtime/modules/uniform-service/src/main/healthcheck/org.apache.felix.hc.generalchecks.HttpRequestsCheck-uniform_service.cfg b/platform/runtime/modules/uniform-service/src/main/healthcheck/org.apache.felix.hc.generalchecks.HttpRequestsCheck-uniform_service.cfg index 7f935bb..731f3ce 100644 --- a/platform/runtime/modules/uniform-service/src/main/healthcheck/org.apache.felix.hc.generalchecks.HttpRequestsCheck-uniform_service.cfg +++ b/platform/runtime/modules/uniform-service/src/main/healthcheck/org.apache.felix.hc.generalchecks.HttpRequestsCheck-uniform_service.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # uniform-service # ========== -# Copyright (C) 2020 - 2022 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -18,7 +18,7 @@ # ~~~~~~/licensing~~~~~~ ### requests = [ \ - "http://localhost:8181/cxf/uniform-exchange => 200", \ + "-u admin:admin http://localhost:8181/cxf/uniform-exchange?wsdl => 200", \ ] hc.name="Entaxy Uniform Service" hc.mbean.name="Entaxy.Uniform.Service" diff --git a/platform/runtime/modules/uniform-service/support/pom.xml b/platform/runtime/modules/uniform-service/support/pom.xml index a437720..ba56ab9 100644 --- a/platform/runtime/modules/uniform-service/support/pom.xml +++ b/platform/runtime/modules/uniform-service/support/pom.xml @@ -1,11 +1,9 @@ - + ru.entaxy.esb.platform.runtime.modules uniform-service - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/modules/uniform-service/support/src/main/resources/OSGI-INF/blueprint/camel-context.xml b/platform/runtime/modules/uniform-service/support/src/main/resources/OSGI-INF/blueprint/camel-context.xml index 70280ac..dcd6869 100644 --- a/platform/runtime/modules/uniform-service/support/src/main/resources/OSGI-INF/blueprint/camel-context.xml +++ b/platform/runtime/modules/uniform-service/support/src/main/resources/OSGI-INF/blueprint/camel-context.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/ConfirmGettingPacketRequest.xsl b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/ConfirmGettingPacketRequest.xsl index ca69d74..2d5ad50 100644 --- a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/ConfirmGettingPacketRequest.xsl +++ b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/ConfirmGettingPacketRequest.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/ConfirmGettingPacketResponse.xsl b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/ConfirmGettingPacketResponse.xsl index 5a72386..8dfacc3 100644 --- a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/ConfirmGettingPacketResponse.xsl +++ b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/ConfirmGettingPacketResponse.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/GetPacketRequest.xsl b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/GetPacketRequest.xsl index d51d4b0..e4dcffc 100644 --- a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/GetPacketRequest.xsl +++ b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/GetPacketRequest.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/GetPacketResponse.xsl b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/GetPacketResponse.xsl index 5a72386..8dfacc3 100644 --- a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/GetPacketResponse.xsl +++ b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/GetPacketResponse.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/GetPacketResponseTest.xsl b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/GetPacketResponseTest.xsl index a2ba1f1..a1fabf6 100644 --- a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/GetPacketResponseTest.xsl +++ b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/GetPacketResponseTest.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/PutPacketRequest.xsl b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/PutPacketRequest.xsl index 8f21b1c..d21d5d8 100644 --- a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/PutPacketRequest.xsl +++ b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/PutPacketRequest.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/PutPacketResponse.xsl b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/PutPacketResponse.xsl index 5a72386..8dfacc3 100644 --- a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/PutPacketResponse.xsl +++ b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/PutPacketResponse.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/address.xsl b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/address.xsl index 4271a9e..32e1e4d 100644 --- a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/address.xsl +++ b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/address.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/bigPacketInfos.xsl b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/bigPacketInfos.xsl index 836f94c..d0e10b1 100644 --- a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/bigPacketInfos.xsl +++ b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/bigPacketInfos.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/bigPacketPart.xsl b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/bigPacketPart.xsl index 7594d81..d3110f5 100644 --- a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/bigPacketPart.xsl +++ b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/bigPacketPart.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/packet.xsl b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/packet.xsl index 5147f7f..3060d4f 100644 --- a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/packet.xsl +++ b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/packet.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -29,7 +29,7 @@ - + diff --git a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/packets.xsl b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/packets.xsl index 7e5bfcb..1ce3271 100644 --- a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/packets.xsl +++ b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/packets.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -24,7 +24,7 @@ - + diff --git a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/request.xsl b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/request.xsl index 5039339..5104d8f 100644 --- a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/request.xsl +++ b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/request.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/response.xsl b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/response.xsl index c3a2539..23161d2 100644 --- a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/response.xsl +++ b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/response.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/uuids.xsl b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/uuids.xsl index 09c83db..6dca5f1 100644 --- a/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/uuids.xsl +++ b/platform/runtime/modules/uniform-service/support/src/main/resources/ru/entaxy/esb/platform/runtime/modules/uniform-service/xslt/type/uuids.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ support ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/modules/uniform-service/uniform-service-endpoint/pom.xml b/platform/runtime/modules/uniform-service/uniform-service-endpoint/pom.xml index 960a111..fcb3886 100644 --- a/platform/runtime/modules/uniform-service/uniform-service-endpoint/pom.xml +++ b/platform/runtime/modules/uniform-service/uniform-service-endpoint/pom.xml @@ -1,11 +1,9 @@ - + ru.entaxy.esb.platform.runtime.modules uniform-service - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/runtime/modules/uniform-service/uniform-service-endpoint/src/main/resources/OSGI-INF/blueprint/camel-context.xml b/platform/runtime/modules/uniform-service/uniform-service-endpoint/src/main/resources/OSGI-INF/blueprint/camel-context.xml index 7dfed30..25c74d5 100644 --- a/platform/runtime/modules/uniform-service/uniform-service-endpoint/src/main/resources/OSGI-INF/blueprint/camel-context.xml +++ b/platform/runtime/modules/uniform-service/uniform-service-endpoint/src/main/resources/OSGI-INF/blueprint/camel-context.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ uniform-service-exchange-endpoint ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platform/runtime/pom.xml b/platform/runtime/pom.xml index a953f73..e9e59cd 100644 --- a/platform/runtime/pom.xml +++ b/platform/runtime/pom.xml @@ -1,11 +1,9 @@ - + platform ru.entaxy.esb - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/platform/src/main/features/features.xml b/platform/src/main/features/features.xml index a02ab52..1379a12 100644 --- a/platform/src/main/features/features.xml +++ b/platform/src/main/features/features.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ platform ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -36,11 +36,13 @@ - + mvn:ru.entaxy.esb.underlying/entaxy-underlying-features/${project.version}/xml/features - + + mvn:ru.entaxy.esb/platform/${project.version}/xml/basics - + + mvn:ru.entaxy.esb/platform/${project.version}/xml/legacy mvn:ru.entaxy.esb.system/system-parent/${project.version}/xml/features mvn:ru.entaxy.esb.platform.runtime/base/${project.version}/xml/features @@ -76,105 +78,12 @@ - - entaxy-underlying-configuration - wrap - - shell - feature - jaas - ssh - management - bundle - config - deployer - diagnostic - feature - instance - kar - log - package - service - system - - mvn:org.apache.felix/org.apache.felix.healthcheck.api/2.0.4 mvn:org.apache.felix/org.apache.felix.healthcheck.core/2.0.12 mvn:org.apache.felix/org.apache.felix.healthcheck.generalchecks/2.0.14 - - entaxy-underlying-configuration - entaxy-karaf-basic - scheduler - eventadmin - aries-blueprint - - entaxy-karaf-healthcheck - - cellar - cellar-eventadmin - cxf - - - camel - camel-blueprint - camel-jaxb - camel-cxf - camel-amqp - camel-core - camel-http - - hibernate - jdbc - pax-jdbc-pool-dbcp2 - jndi - - camel-eventadmin - camel-quartz - camel-jsonpath - camel-gson - camel-ognl - - entaxy-karaf-commons-support - entaxy-karaf-liquibase-support - - entaxy-karaf-artemis-jms-support - artemis-jms-client - camel-jms - - - - spring - spring-tx - spring-jdbc - jpa - - - ignite-core - entaxy-karaf-ignite-support - camel-ignite - camel-sql - - entaxy-karaf-jaxb-support - - cave-repository - cave-repository-api - - wrapper - shell-compat - camel-jpa - camel-jaxb - camel-base64 - camel-zip-deflater - camel-zipfile - entaxy-freemarker-support - - entaxy-karaf-basic entaxy-karaf-runtime @@ -244,23 +153,4 @@ entaxy-platform-modules - - - - - entaxy-karaf-basic - entaxy-karaf-runtime - - mvn:ru.entaxy.esb.system/system-parent/${project.version}/cfg/ru.entaxy.esb - - entaxy-legacy-main - - - \ No newline at end of file + diff --git a/platform/src/main/healthcheck/generated/fragments.xml b/platform/src/main/healthcheck/generated/fragments.xml index 3b8838f..bcafb5e 100644 --- a/platform/src/main/healthcheck/generated/fragments.xml +++ b/platform/src/main/healthcheck/generated/fragments.xml @@ -1,5 +1,5 @@ - - mvn:ru.entaxy.esb/platform/1.8.2.2/cfg/org.apache.felix.hc.generalchecks.BundlesStartedCheck-platform + + mvn:ru.entaxy.esb/platform/1.8.3/cfg/org.apache.felix.hc.generalchecks.BundlesStartedCheck-platform \ No newline at end of file diff --git a/platform/src/main/healthcheck/org.apache.felix.hc.generalchecks.BundlesStartedCheck-platform.cfg b/platform/src/main/healthcheck/org.apache.felix.hc.generalchecks.BundlesStartedCheck-platform.cfg index 5ff141a..2a47c7c 100644 --- a/platform/src/main/healthcheck/org.apache.felix.hc.generalchecks.BundlesStartedCheck-platform.cfg +++ b/platform/src/main/healthcheck/org.apache.felix.hc.generalchecks.BundlesStartedCheck-platform.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # platform # ========== -# Copyright (C) 2020 - 2022 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/platform/src/main/scripts/entaxy-platform.install b/platform/src/main/scripts/entaxy-platform.install index cf56c4f..7b423f7 100644 --- a/platform/src/main/scripts/entaxy-platform.install +++ b/platform/src/main/scripts/entaxy-platform.install @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # platform # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/pom.xml b/pom.xml index 2a36209..1759921 100644 --- a/pom.xml +++ b/pom.xml @@ -3,47 +3,60 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 4.0.0 + + ru.entaxy + entaxy-root + 1.0 + + ru.entaxy.esb root - 1.8.2.2 + 1.8.3 pom ENTAXY :: ESB :: ROOT ENTAXY :: ESB :: ROOT + + update-management + underlying system platform ui + + + update - - UTF-8 - UTF-8 + + + entaxy-public + https://nexus.entaxy.ru/nexus/repository/entaxy-public/ + + - 4.2.9 - 4.2.1 + 1.9.16 2.1.20 - 6.0.0 - 5.0.0 1.4.0 - 3.4.5 2.9.0 + + + 9.9.1-6_1 + 2.8.4 2.19.0 - 3.3.6 5.2.17.Final 2.1.0 1.1.0 - 4.2.1 5.2.5.RELEASE_1 5.2.5.RELEASE 1.3.1.Final @@ -71,7 +84,6 @@ 2.0.1 1.14 1.2.17 - 5.1.1 2.4.0-b180830.0438 2.3.1 2.3.2 @@ -86,26 +98,15 @@ * {local-packages} - - - - - + + + + + Karaf-Commands .* - - - - 2.22.2 - 2.5.2 - 2.8.2 - 3.3.0 - 3.0.0 - 3.1.0 - 3.1.2 - 3.2.0 - 3.3.2 + 2.14.1 @@ -114,12 +115,6 @@ - - org.osgi - osgi.core - ${osgi.version} - provided - org.osgi org.osgi.service.component.annotations @@ -244,12 +239,16 @@ ${liquibase.version} provided + + com.microsoft.sqlserver mssql-jdbc ${mssql.version} provided + + org.postgresql postgresql @@ -301,70 +300,17 @@ false + - - org.apache.maven.plugins - maven-surefire-plugin - ${maven-surefire-plugin.version} - - - org.apache.maven.plugins - maven-install-plugin - ${maven-install-plugin.version} - - - org.apache.maven.plugins - maven-deploy-plugin - ${maven-deploy-plugin.version} - - - org.apache.maven.plugins - maven-dependency-plugin - ${maven-dependency-plugin.version} - - - org.apache.maven.plugins - maven-assembly-plugin - ${maven-assembly-plugin.version} - - - org.apache.maven.plugins - maven-antrun-plugin - ${maven-antrun-plugin.version} - - - org.apache.maven.plugins - maven-resources-plugin - ${maven-resources-plugin.version} - - - org.codehaus.mojo - license-maven-plugin - 2.0.0 - - - org.apache.karaf.tooling - karaf-services-maven-plugin - ${karaf.version} - - - com.soebes.maven.plugins - iterator-maven-plugin - 0.5.1 - - - org.codehaus.mojo - build-helper-maven-plugin - ${build-helper-maven-plugin.version} - - - org.apache.maven.plugins - maven-war-plugin - ${maven-war-plugin.version} - + + org.codehaus.mojo + properties-maven-plugin + ${properties-maven-plugin.version}-ENTAXY + + org.apache.felix @@ -380,7 +326,7 @@ ${bundle.osgi.import.pkg} ${bundle.osgi.private.pkg} ${bundle.osgi.dynamicimport.pkg} - + ${bundle.osgi.embed.dependency} ${bundle.osgi.persistence} @@ -429,7 +375,6 @@ org.apache.maven.plugins maven-compiler-plugin - 3.8.0 11 @@ -511,6 +456,7 @@ + private-deploy @@ -584,101 +530,404 @@ release_plugins - - docker.reposilite - - - local-reposilte-releases - http://127.0.0.1:8081/releases - - - local-reposilte-snapshots - http://127.0.0.1:8081/snapshots - - - - - docker.file.repo - - - entaxy-maven-repo-file - file:./temp/entaxy-docker/karaf/repo - - - - - features - - - + + + + + + prepare-main-features-for-kars + + + mainKars + true + + + + maven-resources-plugin - copy-features - validate + copy-main-features-for-kars + generate-resources copy-resources - ${project.build.directory}/features - + ${project.build.directory}/kars/features + src/main/features true - **/features.xml + *.xml + + + + + + + + + + + + + prepare-update-features-for-kars + + + updateKars + true + + + + + + maven-resources-plugin + + + copy-update-features-for-kars + generate-resources + + copy-resources + + + ${project.build.directory}/kars/features + + + src/update/features + true + + *.xml - + - - org.codehaus.mojo - build-helper-maven-plugin - - - attach-features - package - - attach-artifact - - - - - target/features/features.xml - xml - features - - - - - - - - - - - src/main/features/features.xml - - - + + + + + + + create-attach-kars + + false + + + + + + org.apache.maven.plugins + maven-antrun-plugin + + + define-install-skip + validate + + run + + + true + + + + + + + + + + + + + + + + + + + + + + org.apache.felix + maven-bundle-plugin + true + + + default-bundle + none + + + + + org.apache.maven.plugins + maven-compiler-plugin + + + default-compile + none + + compile + + + + default-testCompile + none + + + + + + maven-install-plugin + + ${install.skip} + + + + + org.apache.karaf.tooling + karaf-services-maven-plugin + + + service-metadata-generate + none + + service-metadata-generate + + + + + + maven-war-plugin + + + default-war + none + + + + + + org.apache.maven.plugins + maven-shade-plugin + 3.4.0 + + + none + + shade + + + + + ${install.skip} + + + + + + org.apache.maven.plugins + maven-antrun-plugin + + + collect-features-files-for-kars + process-resources + + run + + + true + + + + + + + + + + + + + ${kars.features.list.tmp} + + + + + + + + + + + + + + + + + + + + com.soebes.maven.plugins + iterator-maven-plugin + + + iterate-features-files-for-kars + prepare-package + + iterator + + + ${iterator.skip} + ${kars.features.list} + ${path.separator} + + + + org.apache.maven.plugins + maven-antrun-plugin + + run + + + + + + @item@ + + filename.current=${filename.full} + + + + + + + + + org.codehaus.mojo + properties-maven-plugin + + read-project-properties + + + ${project.build.directory}/kars/current-properties + + + + + + + org.apache.karaf.tooling + karaf-maven-plugin + ${karaf.version} + true + + kar + + + ${project.artifactId}.${filename.current} + + + + + ${project.build.directory}/kars/resources/${filename.current} + resources/system/ + ${project.build.directory}/kars/features/${filename.current}.xml + + + + + + + + org.apache.maven.plugins + maven-antrun-plugin + + run + + + + + + + + + + + + + + + + + + + + + + org.codehaus.mojo + build-helper-maven-plugin + ${build-helper-maven-plugin.version} + + attach-artifact + + + + target/${project.artifactId}.${filename.current}.kar + kar + ${filename.current} + + + + + + + + + + + + + + asciidoctor + org.asciidoctor asciidoctor-maven-plugin 2.2.1 @@ -700,7 +949,7 @@ true - + - true _styles @@ -726,8 +975,8 @@ - - + + @@ -765,13 +1014,18 @@ - + license - !skipLicense + processLicense + true @@ -788,7 +1042,7 @@ ~~~~~~licensing~~~~~~ ~~~~~~/licensing~~~~~~ ========== - + @@ -816,6 +1070,24 @@ + + org.codehaus.mojo + build-helper-maven-plugin + ${build-helper-maven-plugin.version} + + + timestamp-property + + timestamp-property + + validate + + current.year + yyyy + + + + org.codehaus.mojo license-maven-plugin @@ -887,6 +1159,7 @@ ${license.projectName} ${license.copyrightOwners} ${license.licenseName} + true @@ -897,10 +1170,15 @@ **/*.json **/*.ftl + ${license.update.headers.exclude} properties +

properties

+ properties + properties + xml
true @@ -917,7 +1195,6 @@ com.mycila license-maven-plugin - 4.1 update-ftl-header @@ -929,13 +1206,13 @@ EmDev LLC entaxy@entaxy.ru - 2021 + ${current.year} ~~~~~~licensing~~~~~~ -${license.projectName} +${project.artifactId} ========== Copyright (C) 2020 - ${year} ${owner} ========== @@ -976,6 +1253,10 @@ limitations under the License. aggregate.marker + + processLicense + true + @@ -1045,179 +1326,1456 @@ limitations under the License. + + + + + + disable-attaches + + false + + + + + org.apache.maven.plugins + maven-antrun-plugin + + + set-disable-attaches + validate + + run + + + true + + true + + + + + + + + - attach-healthchecks + prepare-attaches-main - - src/main/healthcheck - + + + !skipMainAttach + + + +default.artifact.extension=xml +default.file.folder= +fragments.generate=false +fragments.folder=src/main/features + + +default.artifact.extension=cfg +default.file.folder=etc +fragments.generate=true +fragments.folder=src/main/healthcheck + + +default.artifact.extension=script +default.file.folder=scripts +fragments.generate=true +fragments.folder=src/main/scripts + + maven-resources-plugin - copy-healthchecks - validate + copy-main-attaches + generate-resources copy-resources - ${project.build.directory}/healthcheck - + ${disable.attaches} + ${project.build.directory}/attach-resources/resources + - src/main/healthcheck + src/main true - *.* + features/*.xml + healthcheck/*.cfg + scripts/**/* + + */generated/* + + + + + + + + + + + + + prepare-attaches-update + + + updateAttach + true + + + + +default.artifact.extension=xml +default.file.folder= +fragments.generate=false +fragments.folder=src/update/features + + +default.artifact.extension=cfg +default.file.folder=etc +fragments.generate=true +fragments.folder=src/update/healthcheck + + +default.artifact.extension=script +default.file.folder=updates/${project.version} +fragments.generate=true +fragments.folder=src/update/scripts + + + + + + maven-resources-plugin + + + copy-update-attaches + generate-resources + + copy-resources + + + ${disable.attaches} + ${project.build.directory}/attach-resources/resources + + + src/update/features + true + + *.xml + + + generated/* + + ${project.build.directory}/attach-resources/resources/update.features + + + src/update/healthcheck + true + + *.cfg + + + generated/* + + ${project.build.directory}/attach-resources/resources/update.healthcheck + + + src/update/scripts + true + + **/* + + + generated/* + + ${project.build.directory}/attach-resources/resources/update.scripts - - org.apache.maven.plugins - maven-antrun-plugin - - - collect-healthckeck-configs - prepare-package - - run - - - true - - - - - - - - ${file.list.tmp} - - - - - - - - - + + + + com.soebes.maven.plugins + iterator-maven-plugin + + + + prepare-attaches-lists + generate-resources - run + iterator - - Displaying value of 'file.list' property - [file.list] ${file.list} - + ${skip.attaches} + ${project.build.directory}/attach-resources/resources/ + + + + org.apache.maven.plugins + maven-antrun-plugin + + run + + false + + + --!!-- @item@ --!!-- + @item@ + + + + + + + + ${file.list.tmp} + + + ${current.defaults} + + + + + + - - - - - - com.soebes.maven.plugins - iterator-maven-plugin - - - iterate-healthcheck-configs - package - - iterator - - - ${file.list} - ${path.separator} - - - - org.apache.maven.plugins - maven-antrun-plugin - - run - - - @item@ - - filename.current=${filename.full} - - + + + + iterate-attaches + prepare-package + + iterator + + + ${skip.attaches} + ${attaches.list} + ${path.separator} + + + + org.apache.maven.plugins + maven-antrun-plugin + + run + + false + + + @item@ + CURRENT :: ${item.current.local} + + + + :: ${item.type.local} :: ${file.path.local} :: ${file.name.ext.local} + + + +${line.separator} +item.current=${item.current.local} +item.type=${item.type.local} +file.path=${file.path.local} +file.name.ext=${file.name.ext.local} + + + + + + + + org.codehaus.mojo + properties-maven-plugin + + read-project-properties + + + ${project.build.directory}/attach-resources/current.defaults + + + + + + + org.apache.maven.plugins + maven-antrun-plugin + + run + + false + + + + +LOADED DATA: + +default.artifact.extension=${default.artifact.extension} +default.file.folder=${default.file.folder} +fragments.generate=${fragments.generate} +fragments.folder=${fragments.folder} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + filename.current=${filename.full} +fileext.current=${file.ext} +target.current=${filename.target} +folder.current=${file.folder} +classifier.current=${artifact.classifier} +extension.current=${artifact.extension} +path.current=${item.current} + + + + + - - mvn:${project.groupId}/${project.artifactId}/${project.version}/cfg/${filename.full} + + mvn:${project.groupId}/${project.artifactId}/${project.version}/${artifact.extension}/${artifact.classifier} - ]]> - - - - - - - org.codehaus.mojo - properties-maven-plugin - 1.0.0 - - read-project-properties - - - ${project.build.directory}/tmp/properties - - - - - - - - - - org.codehaus.mojo - build-helper-maven-plugin - ${build-helper-maven-plugin.version} - - attach-artifact +]]> + + + + + + + + + + org.codehaus.mojo + properties-maven-plugin + + read-project-properties + + + ${project.build.directory}/attach-resources/tmp/attach.properties + + + + + + + org.codehaus.mojo + build-helper-maven-plugin + ${build-helper-maven-plugin.version} + + attach-artifact + + + + ${project.build.directory}/attach-resources/resources/${path.current} + ${extension.current} + ${classifier.current} + + + + + + + + + + + + + + + + + + + + + process-update-descriptor + + + src/update/descriptor/descriptor.xml + + + !skipUpdateDescriptor + + + + + + org.apache.maven.plugins + maven-dependency-plugin + + + prepare-update-xslt + validate + + copy + + + + + ru.entaxy.esb.update-management + update-management-support + ${project.version} + xslt + version-list + true + ${project.build.directory}/update/support + version-list.xslt + + + ru.entaxy.esb.update-management + update-management-support + ${project.version} + xslt + install-plan + true + ${project.build.directory}/update/support + install-plan.xslt + + + ru.entaxy.esb.update-management + update-management-support + ${project.version} + xslt + component-config + true + ${project.build.directory}/update/support + component-config.xslt + + + ru.entaxy.esb.update-management + update-management-support + ${project.version} + xslt + component-name + true + ${project.build.directory}/update/support + component-name.xslt + + + ru.entaxy.esb.update-management + update-management-support + ${project.version} + xslt + components-list + true + ${project.build.directory}/update/support + components-list.xslt + + + ru.entaxy.esb.update-management + update-management-support + ${project.version} + xslt + repositories-list + true + ${project.build.directory}/update/support + repositories-list.xslt + + + + + + + + maven-resources-plugin + + + copy-update-desciptor + validate + + copy-resources + + + ${disable.attaches} + ${project.build.directory}/update/descriptor + + + src/update/descriptor + true + + descriptor.xml + + + + + + + + + + org.codehaus.mojo + xml-maven-plugin + 1.0.2 + + + generate-version-component-repo-list + validate + + transform + + + true + + + ${project.build.directory}/update/descriptor + ${project.build.directory}/update/support/version-list.xslt + ${project.build.directory}/update/descriptor-processed + + + .versions + + + + + ${project.build.directory}/update/descriptor + ${project.build.directory}/update/support/components-list.xslt + ${project.build.directory}/update/descriptor-processed + + + .components + + + + + ${project.build.directory}/update/descriptor + ${project.build.directory}/update/support/repositories-list.xslt + ${project.build.directory}/update/repositories/current + + + .repositories + + + + + + + + + + net.sf.saxon + saxon + 8.7 + + + + + + org.apache.maven.plugins + maven-antrun-plugin + true + + + load-versions-list + validate + + run + + + true + + + + + + + true + + + + false + + + skip.update.versions :: ${skip.update.versions} + + + + + load-components-list + validate + + run + + + true + + + + + + + true + + + + false + + + +skip.update.versions :: ${skip.update.versions} +skip.update.components :: ${skip.update.components} + + + + + + + + com.soebes.maven.plugins + iterator-maven-plugin + + + + generate-versions-plans + validate + + iterator + + + ${skip.update.versions} + ${update.versions.list} + ; + + + + org.apache.maven.plugins + maven-antrun-plugin + + run + + false + + + @item@ + ::${current.item}:: + + + + + + + + + + + + +current.version=${current.item}${line.separator} +current.suffix=${current.suf} +current.folder=${current.fold} + + + + + + org.codehaus.mojo + properties-maven-plugin + + read-project-properties + + + ${project.build.directory}/update/current.version + + + + + + org.apache.maven.plugins + maven-antrun-plugin + + run + + false + + + +current.version=${current.version} +current.suffix=${current.suffix} +current.folder=${current.folder} + + + + + + + org.codehaus.mojo + xml-maven-plugin + + transform + + true + + + ${project.build.directory}/update/descriptor + ${project.build.directory}/update/support/install-plan.xslt + + + currentVersion + ${current.version} + + + ${project.build.directory}/update/descriptor-processed/versions/${current.folder} + + + .plan + + + + + net.sf.saxon.TransformerFactoryImpl + + + + + org.apache.maven.plugins + maven-antrun-plugin + + run + + true + + + + + + + + +--- +${platform.plan} +--- +${platform.1.8.2.plan} + + + + + + + + + + download-prepare-components-descriptors + validate + + iterator + + + ${skip.update.components} + ${update.components.list} + ; + + + + org.apache.maven.plugins + maven-antrun-plugin + + run + + false + + + @item@ + +current.component=${current.component} + + + + + +component.groupId=${current.comp.groupId} +component.artifactId=${current.comp.artifactId} +component.version=${current.comp.version} +component.folder=${current.comp.groupId}.${current.comp.artifactId} + + + + + + + org.codehaus.mojo + properties-maven-plugin + + read-project-properties + + + ${project.build.directory}/update/current.component + + + + + + org.apache.maven.plugins + maven-antrun-plugin + + run + + false + + + +component.groupId=[${component.groupId}] +component.artifactId=[${component.artifactId}] +component.version=[${component.version}] +component.folder=[${component.folder}] + + + + + + + org.apache.maven.plugins + maven-dependency-plugin + + copy + + + + ${component.groupId} + ${component.artifactId} + ${component.version} + xml + update-descriptor + true + ${project.build.directory}/update/components/${component.folder} + descriptor.xml + + + + + + + org.codehaus.mojo + xml-maven-plugin + + transform + + true + + + ${project.build.directory}/update/components/${component.folder} + + descriptor.xml + + ${project.build.directory}/update/support/component-name.xslt + ${project.build.directory}/update/components/${component.folder} + + + .name + + + + + ${project.build.directory}/update/components/${component.folder} + + descriptor.xml + + ${project.build.directory}/update/support/component-config.xslt + ${project.build.directory}/update/components/${component.folder} + + + .config + + + + + ${project.build.directory}/update/components/${component.folder} + + descriptor.xml + + ${project.build.directory}/update/support/repositories-list.xslt + ${project.build.directory}/update/repositories/${component.folder} + + + .repositories + + + + + + + + + + + + + com.soebes.maven.plugins + iterator-maven-plugin + + + prepare-generate-update-config + validate + + iterator + + + ${skip.update.components} + ${project.build.directory}/update/components/ + + + + org.apache.maven.plugins + maven-antrun-plugin + + run + + false + + + +-- :: @item@ :: -- + + @item@ + + ${component.name}, + + ${component.config} + + + + + + + + + + + org.apache.maven.plugins + maven-antrun-plugin + + + generate-update-config + run + generate-sources + + true + + + + + + + components= + + + + + + +CONFIG CONTENT :: +${update.config.content} + + + + + + + + + + org.codehaus.mojo + build-helper-maven-plugin + + + attach-update-descriptor + + attach-artifact + + prepare-package - src/main/healthcheck/${filename.current}.cfg - cfg - ${filename.current} + ${project.build.directory}/update/descriptor/descriptor.xml + xml + update-descriptor - - - - - - - - - + + + - + +
+
+ + + + + + create-attach-update-kars + + + + org.apache.maven.plugins + maven-antrun-plugin + + + define-update-kar-skip + process-resources + + run + + + true + + + + + + + + + + + + + + + true + + + + + + + + prepare-resulting-repo-list + process-resources + + run + + + true + ${skip.update.kar} + + + + + + + + + + + assembly-final-kar + prepare-package + + run + + + ${skip.update.kar} + true + + + + + + + false + + + true + + + + + + + + + + com.soebes.maven.plugins + iterator-maven-plugin + + + download-unpack-kars + process-classes + + iterator + + + ${skip.update.kar} + ${update.repo.list} + ; + + + + org.apache.maven.plugins + maven-antrun-plugin + + run + + false + + + @item@ + + + + + + +repo.groupId=${current.repo.groupId} +repo.artifactId=${current.repo.artifactId} +repo.version=${current.repo.version} +repo.type=${current.repo.type} +repo.classifier=${current.repo.classifier} + + + + + + + org.codehaus.mojo + properties-maven-plugin + + read-project-properties + + + ${project.build.directory}/update/current.repo + + + + + + org.apache.maven.plugins + maven-dependency-plugin + + copy + + + + ${repo.groupId} + ${repo.artifactId} + ${repo.version} + ${repo.type} + ${repo.classifier} + true + ${project.build.directory}/update/final-kar + current.kar + + + + + + + org.apache.maven.plugins + maven-antrun-plugin + + run + + false + + + + === !!! UNPACK !!! === +${repo.groupId}/${repo.artifactId}/${repo.version}/${repo.type}/${repo.classifier} + + + + + + + + + + + + + + org.codehaus.mojo + build-helper-maven-plugin + + + attach-result-kar + + attach-artifact + + package + + ${skip.attach.kar.final} + + + ${project.build.directory}/update/final-kar/result.kar + kar + final + + + + + + + + + + org.apache.felix + maven-bundle-plugin + true + + + default-bundle + none + + + + + org.apache.maven.plugins + maven-compiler-plugin + + + default-compile + none + + compile + + + + default-testCompile + none + + + + + + maven-install-plugin + + ${skip.attach.kar.final} + + + + + org.apache.karaf.tooling + karaf-services-maven-plugin + + + service-metadata-generate + none + + service-metadata-generate + + + + + + maven-war-plugin + + + default-war + none + + + + + + org.apache.maven.plugins + maven-shade-plugin + 3.4.0 + + + none + + shade + + + + + true + + + + + + + + + + setVersion @@ -1342,7 +2900,7 @@ limitations under the License. set - true + false true false @@ -1383,83 +2941,626 @@ limitations under the License. - + + + + + + + + docker.reposilite + + + local-reposilte-releases + http://127.0.0.1:8081/releases + + + local-reposilte-snapshots + http://127.0.0.1:8081/snapshots + + + + + + docker.file.repo + + + entaxy-maven-repo-file + file:./temp/entaxy-docker/karaf/repo + + + + + + + features + + + src/main/features/features.xml.___ + + + + + + + maven-resources-plugin + + + copy-features + validate + + copy-resources + + + ${project.build.directory}/features + + + src/main/features + true + + **/features.xml + + + + + + + + + org.codehaus.mojo + build-helper-maven-plugin + + + attach-features + package + + attach-artifact + + + + + target/features/features.xml + xml + features + + + + + + + + + + + + + + attach-features + + + src/main/features_ + + + + + + maven-resources-plugin + + + copy-features + process-resources + + copy-resources + + + ${project.build.directory}/features + + + src/main/features + true + + *.xml + + + + + + + + + org.apache.maven.plugins + maven-antrun-plugin + + + collect-features-files + prepare-package + + run + + + true + + + + + + + + ${features.list.tmp} + + + + + + + + + + com.soebes.maven.plugins + iterator-maven-plugin + + + iterate-features-files + package + + iterator + + + ${features.list} + ${path.separator} + + + + org.apache.maven.plugins + maven-antrun-plugin + + run + + + @item@ + + filename.current=${filename.full} + + + + + + org.codehaus.mojo + properties-maven-plugin + + read-project-properties + + + ${project.build.directory}/tmp/features-properties + + + + + + org.codehaus.mojo + build-helper-maven-plugin + ${build-helper-maven-plugin.version} + + attach-artifact + + + + target/features/${filename.current}.xml + xml + ${filename.current} + + + + + + + + + + + + + + + + attach-healthchecks + + + src/main/healthcheck_ + + + + + + maven-resources-plugin + + + copy-healthchecks + validate + + copy-resources + + + ${project.build.directory}/healthcheck + + + src/main/healthcheck + true + + *.* + + + + + + + + + org.apache.maven.plugins + maven-antrun-plugin + + + collect-healthckeck-configs + prepare-package + + run + + + true + + + + + + + + ${file.list.tmp} + + + + + + + + + + + + + + com.soebes.maven.plugins + iterator-maven-plugin + + + iterate-healthcheck-configs + package + + iterator + + + ${file.list} + ${path.separator} + + + + org.apache.maven.plugins + maven-antrun-plugin + + run + + + @item@ + + filename.current=${filename.full} + + + + mvn:${project.groupId}/${project.artifactId}/${project.version}/cfg/${filename.full} + + + ]]> + + + + + + + org.codehaus.mojo + properties-maven-plugin + + read-project-properties + + + ${project.build.directory}/tmp/properties + + + + + + + + + + org.codehaus.mojo + build-helper-maven-plugin + ${build-helper-maven-plugin.version} + + attach-artifact + + + + src/main/healthcheck/${filename.current}.cfg + cfg + ${filename.current} + + + + + + + + + + + + + + + + attach-scripts + + + src/main/scripts_ + + + + + + maven-resources-plugin + + + copy-scripts + validate + + copy-resources + + + ${project.build.directory}/scripts + + + src/main/scripts + true + + **/* + generated/* + + + + + + + + + org.apache.maven.plugins + maven-antrun-plugin + + + collect-scripts + prepare-package + + run + + + true + + + + + + + + + + ${scripts.list.tmp} + + + + + + + + + + com.soebes.maven.plugins + iterator-maven-plugin + + false + + + + iterate-scripts + package + + iterator + + + ${scripts.list} + ${path.separator} + + + + org.apache.maven.plugins + maven-antrun-plugin + + run + + + + @item@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + filename.current=${filename.full} +fileext.current=${filename.ext} +target.current=${filename.target} +folder.current=${file.folder} +classifier.current=${artifact.classifier} +extension.current=${artifact.extension} +path.current=${item.current} + + + + + mvn:${project.groupId}/${project.artifactId}/${project.version}/${artifact.extension}/${artifact.classifier} + + + ]]> + + + + + + + org.codehaus.mojo + properties-maven-plugin + + read-project-properties + + + ${project.build.directory}/tmp/scripts.properties + + + + + + + org.codehaus.mojo + build-helper-maven-plugin + ${build-helper-maven-plugin.version} + + attach-artifact + + + + ${project.build.directory}/scripts/${path.current} + ${extension.current} + ${classifier.current} + + + + + + + + + + + + + + + + + - - - http://www.emdev.ru - EmDev - - - Jenkins - http://build.emdev.ru/jenkins/ - + scm:git:https://git.emdev.ru/entaxy/entaxy-framework - - - - - entaxy-public - entaxy-public - - https://nexus.entaxy.ru/nexus/repository/entaxy-public/ - default - - true - warn - never - - - false - - - - - - entaxy-private - entaxy-private - - https://nexus.entaxy.ru/nexus/repository/entaxy-private/ - default - - true - warn - never - - - true - warn - never - - - - - - - - entaxy-public - entaxy-public - - https://nexus.entaxy.ru/nexus/repository/entaxy-public/ - default - - true - warn - never - - - false - - - -
diff --git a/src/documentation/assembly/assembly.xml b/src/documentation/assembly/assembly.xml index 1827b15..c991631 100644 --- a/src/documentation/assembly/assembly.xml +++ b/src/documentation/assembly/assembly.xml @@ -1,9 +1,8 @@ - - - - documentation - entaxy-documentation-${project.version} - - zip - - - - ${project.build.directory}/documentation - - **/* - - / - - - diff --git a/system/auth/basic-auth/basic-auth-api/pom.xml b/system/auth/basic-auth/basic-auth-api/pom.xml index 70d9f39..380173a 100644 --- a/system/auth/basic-auth/basic-auth-api/pom.xml +++ b/system/auth/basic-auth/basic-auth-api/pom.xml @@ -1,12 +1,11 @@ - + 4.0.0 ru.entaxy.esb.system.auth.basic basic-auth - 1.8.2.2 + 1.8.3 ru.entaxy.esb.system.auth.basic.api diff --git a/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/BasicAuthService.java b/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/BasicAuthService.java index 145861b..0e5bcd4 100644 --- a/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/BasicAuthService.java +++ b/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/BasicAuthService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * basic-auth-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/entity/BasicAuthAccount.java b/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/entity/BasicAuthAccount.java index 19fac0e..dcabe86 100644 --- a/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/entity/BasicAuthAccount.java +++ b/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/entity/BasicAuthAccount.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * basic-auth-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/entity/field/EncryptionAlgorithm.java b/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/entity/field/EncryptionAlgorithm.java index b2707c7..f49645f 100644 --- a/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/entity/field/EncryptionAlgorithm.java +++ b/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/entity/field/EncryptionAlgorithm.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * basic-auth-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/entity/field/EncryptionAlgorithmAttributeConverter.java b/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/entity/field/EncryptionAlgorithmAttributeConverter.java index 63d936b..87bdd05 100644 --- a/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/entity/field/EncryptionAlgorithmAttributeConverter.java +++ b/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/entity/field/EncryptionAlgorithmAttributeConverter.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * basic-auth-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/exception/BadPasswordException.java b/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/exception/BadPasswordException.java index 0a5f65c..6229bd4 100644 --- a/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/exception/BadPasswordException.java +++ b/system/auth/basic-auth/basic-auth-api/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/api/exception/BadPasswordException.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * basic-auth-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/basic-auth-impl/pom.xml b/system/auth/basic-auth/basic-auth-impl/pom.xml index 44a1963..f862455 100644 --- a/system/auth/basic-auth/basic-auth-impl/pom.xml +++ b/system/auth/basic-auth/basic-auth-impl/pom.xml @@ -1,12 +1,11 @@ - + 4.0.0 ru.entaxy.esb.system.auth.basic basic-auth - 1.8.2.2 + 1.8.3 ru.entaxy.esb.system.auth.basic.impl diff --git a/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/interceptor/AuthenticationInterceptor.java b/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/interceptor/AuthenticationInterceptor.java index 3a87ab6..d268513 100644 --- a/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/interceptor/AuthenticationInterceptor.java +++ b/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/interceptor/AuthenticationInterceptor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * basic-auth-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/interceptor/SystemInterceptor.java b/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/interceptor/SystemInterceptor.java index 5411c18..a660e89 100644 --- a/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/interceptor/SystemInterceptor.java +++ b/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/interceptor/SystemInterceptor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * basic-auth-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/impl/BasicAuthServiceImpl.java b/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/impl/BasicAuthServiceImpl.java index bd64a78..3c7a5ea 100644 --- a/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/impl/BasicAuthServiceImpl.java +++ b/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/impl/BasicAuthServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * basic-auth-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/listener/BasicAuthPostEventListener.java b/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/listener/BasicAuthPostEventListener.java index 64e9864..74cbc61 100644 --- a/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/listener/BasicAuthPostEventListener.java +++ b/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/listener/BasicAuthPostEventListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * basic-auth-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/listener/EntityEventListenerRegistry.java b/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/listener/EntityEventListenerRegistry.java index 02731bd..30bc35f 100644 --- a/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/listener/EntityEventListenerRegistry.java +++ b/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/listener/EntityEventListenerRegistry.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * basic-auth-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/util/EncryptionHelper.java b/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/util/EncryptionHelper.java index 3e8da07..8d5181e 100644 --- a/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/util/EncryptionHelper.java +++ b/system/auth/basic-auth/basic-auth-impl/src/main/java/ru/entaxy/esb/system/auth/basic/jpa/util/EncryptionHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * basic-auth-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/basic-auth-impl/src/main/resources/OSGI-INF/blueprint/camel-context.xml b/system/auth/basic-auth/basic-auth-impl/src/main/resources/OSGI-INF/blueprint/camel-context.xml index 3d9fafc..2f63096 100644 --- a/system/auth/basic-auth/basic-auth-impl/src/main/resources/OSGI-INF/blueprint/camel-context.xml +++ b/system/auth/basic-auth/basic-auth-impl/src/main/resources/OSGI-INF/blueprint/camel-context.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ basic-auth-impl ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/basic-auth-impl/src/main/resources/hibernate.cfg.xml b/system/auth/basic-auth/basic-auth-impl/src/main/resources/hibernate.cfg.xml index c26ebf5..8e8965a 100644 --- a/system/auth/basic-auth/basic-auth-impl/src/main/resources/hibernate.cfg.xml +++ b/system/auth/basic-auth/basic-auth-impl/src/main/resources/hibernate.cfg.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ basic-auth-impl ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/basic-auth-impl/src/main/resources/log4j2.properties b/system/auth/basic-auth/basic-auth-impl/src/main/resources/log4j2.properties index 56ebd1f..6227d18 100644 --- a/system/auth/basic-auth/basic-auth-impl/src/main/resources/log4j2.properties +++ b/system/auth/basic-auth/basic-auth-impl/src/main/resources/log4j2.properties @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # basic-auth-impl # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/basic-auth-soap/pom.xml b/system/auth/basic-auth/basic-auth-soap/pom.xml index 74f669d..1fda423 100644 --- a/system/auth/basic-auth/basic-auth-soap/pom.xml +++ b/system/auth/basic-auth/basic-auth-soap/pom.xml @@ -1,11 +1,9 @@ - + basic-auth ru.entaxy.esb.system.auth.basic - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/system/auth/basic-auth/basic-auth-soap/src/main/resources/OSGI-INF/blueprint/camel-context.xml b/system/auth/basic-auth/basic-auth-soap/src/main/resources/OSGI-INF/blueprint/camel-context.xml index 2af40ae..4c9ba2b 100644 --- a/system/auth/basic-auth/basic-auth-soap/src/main/resources/OSGI-INF/blueprint/camel-context.xml +++ b/system/auth/basic-auth/basic-auth-soap/src/main/resources/OSGI-INF/blueprint/camel-context.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ basic-auth-soap ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/htpasswd/pom.xml b/system/auth/basic-auth/htpasswd/pom.xml index e58f8a0..e9e063d 100644 --- a/system/auth/basic-auth/htpasswd/pom.xml +++ b/system/auth/basic-auth/htpasswd/pom.xml @@ -1,12 +1,11 @@ - + 4.0.0 ru.entaxy.esb.system.auth.basic basic-auth - 1.8.2.2 + 1.8.3 ru.entaxy.esb.system.auth.basic.htpasswd diff --git a/system/auth/basic-auth/htpasswd/src/main/java/ru/entaxy/esb/system/auth/basic/htpasswd/HtpasswdGenerator.java b/system/auth/basic-auth/htpasswd/src/main/java/ru/entaxy/esb/system/auth/basic/htpasswd/HtpasswdGenerator.java index 3a161dc..e94ab00 100644 --- a/system/auth/basic-auth/htpasswd/src/main/java/ru/entaxy/esb/system/auth/basic/htpasswd/HtpasswdGenerator.java +++ b/system/auth/basic-auth/htpasswd/src/main/java/ru/entaxy/esb/system/auth/basic/htpasswd/HtpasswdGenerator.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * htpasswd * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/htpasswd/src/main/java/ru/entaxy/esb/system/auth/basic/htpasswd/entity/Htpasswd.java b/system/auth/basic-auth/htpasswd/src/main/java/ru/entaxy/esb/system/auth/basic/htpasswd/entity/Htpasswd.java index 9ca93ea..5f57466 100644 --- a/system/auth/basic-auth/htpasswd/src/main/java/ru/entaxy/esb/system/auth/basic/htpasswd/entity/Htpasswd.java +++ b/system/auth/basic-auth/htpasswd/src/main/java/ru/entaxy/esb/system/auth/basic/htpasswd/entity/Htpasswd.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * htpasswd * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/htpasswd/src/main/java/ru/entaxy/esb/system/auth/basic/htpasswd/entity/HtpasswdEntry.java b/system/auth/basic-auth/htpasswd/src/main/java/ru/entaxy/esb/system/auth/basic/htpasswd/entity/HtpasswdEntry.java index 37c211f..d80554d 100644 --- a/system/auth/basic-auth/htpasswd/src/main/java/ru/entaxy/esb/system/auth/basic/htpasswd/entity/HtpasswdEntry.java +++ b/system/auth/basic-auth/htpasswd/src/main/java/ru/entaxy/esb/system/auth/basic/htpasswd/entity/HtpasswdEntry.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * htpasswd * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/htpasswd/src/main/java/ru/entaxy/esb/system/auth/basic/htpasswd/rest/HtpasswdService.java b/system/auth/basic-auth/htpasswd/src/main/java/ru/entaxy/esb/system/auth/basic/htpasswd/rest/HtpasswdService.java index 7ca93a3..87c9230 100644 --- a/system/auth/basic-auth/htpasswd/src/main/java/ru/entaxy/esb/system/auth/basic/htpasswd/rest/HtpasswdService.java +++ b/system/auth/basic-auth/htpasswd/src/main/java/ru/entaxy/esb/system/auth/basic/htpasswd/rest/HtpasswdService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * htpasswd * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/htpasswd/src/main/resources/OSGI-INF/blueprint/htpasswd-context.xml b/system/auth/basic-auth/htpasswd/src/main/resources/OSGI-INF/blueprint/htpasswd-context.xml index 3e75315..c7007fb 100644 --- a/system/auth/basic-auth/htpasswd/src/main/resources/OSGI-INF/blueprint/htpasswd-context.xml +++ b/system/auth/basic-auth/htpasswd/src/main/resources/OSGI-INF/blueprint/htpasswd-context.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ htpasswd ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/htpasswd/src/main/resources/script/htpasswd-checker.sh b/system/auth/basic-auth/htpasswd/src/main/resources/script/htpasswd-checker.sh index 1829c36..593c043 100644 --- a/system/auth/basic-auth/htpasswd/src/main/resources/script/htpasswd-checker.sh +++ b/system/auth/basic-auth/htpasswd/src/main/resources/script/htpasswd-checker.sh @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # htpasswd # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/auth/basic-auth/pom.xml b/system/auth/basic-auth/pom.xml index eded072..196606a 100644 --- a/system/auth/basic-auth/pom.xml +++ b/system/auth/basic-auth/pom.xml @@ -1,13 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system.auth system-auth - 1.8.2.2 + 1.8.3 ru.entaxy.esb.system.auth.basic diff --git a/system/auth/pom.xml b/system/auth/pom.xml index 180691f..8567242 100644 --- a/system/auth/pom.xml +++ b/system/auth/pom.xml @@ -1,13 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system system-parent - 1.8.2.2 + 1.8.3 ru.entaxy.esb.system.auth diff --git a/system/commons/pom.xml b/system/commons/pom.xml index 3836e50..9915b2d 100644 --- a/system/commons/pom.xml +++ b/system/commons/pom.xml @@ -1,14 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system system-parent - 1.8.2.2 + 1.8.3 ru.entaxy.esb.system.commons diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/HeaderMergeAggregatorImpl.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/HeaderMergeAggregatorImpl.java index 6deb149..0c3f336 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/HeaderMergeAggregatorImpl.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/HeaderMergeAggregatorImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/TimeoutAwareAggregationStrategyImpl.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/TimeoutAwareAggregationStrategyImpl.java index 8cd7abf..ba9f7da 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/TimeoutAwareAggregationStrategyImpl.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/TimeoutAwareAggregationStrategyImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/hazelcast/DisconnectedMembershipListener.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/hazelcast/DisconnectedMembershipListener.java index 8dca725..f2151a0 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/hazelcast/DisconnectedMembershipListener.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/hazelcast/DisconnectedMembershipListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/repo/IgniteAggregationRepository.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/repo/IgniteAggregationRepository.java index 914f60d..e0d40d0 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/repo/IgniteAggregationRepository.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/repo/IgniteAggregationRepository.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/repo/JdbcAggregationRepository.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/repo/JdbcAggregationRepository.java index acb19d5..bfbb238 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/repo/JdbcAggregationRepository.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/repo/JdbcAggregationRepository.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/repo/PostgresAggregationRepository.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/repo/PostgresAggregationRepository.java index e751b27..2bb6739 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/repo/PostgresAggregationRepository.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/aggregation/repo/PostgresAggregationRepository.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/BundleNotFound.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/BundleNotFound.java index 5f8a489..44700cc 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/BundleNotFound.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/BundleNotFound.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/ConnectorNotFound.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/ConnectorNotFound.java index b150880..0b2f5ce 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/ConnectorNotFound.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/ConnectorNotFound.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/EsbNotFound.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/EsbNotFound.java index a64c0ac..4624168 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/EsbNotFound.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/EsbNotFound.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/ProfileNotFound.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/ProfileNotFound.java index 5760c71..5501993 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/ProfileNotFound.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/ProfileNotFound.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/TemplateNotFound.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/TemplateNotFound.java index 470068c..1daade2 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/TemplateNotFound.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/exception/TemplateNotFound.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/interceptor/SoapHeaderInterceptor.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/interceptor/SoapHeaderInterceptor.java index 1f77300..95192d4 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/interceptor/SoapHeaderInterceptor.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/interceptor/SoapHeaderInterceptor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/BundleMarkerService.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/BundleMarkerService.java index b3f396d..dd65cd5 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/BundleMarkerService.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/BundleMarkerService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/NamedReferenceListener.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/NamedReferenceListener.java index c177d71..c0169e0 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/NamedReferenceListener.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/NamedReferenceListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/OSGIUtils.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/OSGIUtils.java index c11ea0c..aaf8327 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/OSGIUtils.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/OSGIUtils.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/ReferenceListener.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/ReferenceListener.java index 8a25039..7a4db44 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/ReferenceListener.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/ReferenceListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/UniformBundleTracker.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/UniformBundleTracker.java index 5c26066..c61dc38 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/UniformBundleTracker.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/UniformBundleTracker.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/impl/BundleMarkerServiceImpl.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/impl/BundleMarkerServiceImpl.java index e0a534c..d066089 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/impl/BundleMarkerServiceImpl.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/impl/BundleMarkerServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/impl/CommonNamedReferenceListener.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/impl/CommonNamedReferenceListener.java index ab6a886..1fa3a68 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/impl/CommonNamedReferenceListener.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/impl/CommonNamedReferenceListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/impl/CommonReferenceListener.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/impl/CommonReferenceListener.java index 148c200..e7e4e92 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/impl/CommonReferenceListener.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/osgi/impl/CommonReferenceListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/util/CustomHeader.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/util/CustomHeader.java index 9db0143..bbe754c 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/util/CustomHeader.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/util/CustomHeader.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/util/HeadersConverter.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/util/HeadersConverter.java index 757dc89..5667b85 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/util/HeadersConverter.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/util/HeadersConverter.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/util/PropertiesHelper.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/util/PropertiesHelper.java index ad82851..e999d2b 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/util/PropertiesHelper.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/util/PropertiesHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/util/SimpleOutHeaderFilterStrategy.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/util/SimpleOutHeaderFilterStrategy.java index 85b811c..ff293ab 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/util/SimpleOutHeaderFilterStrategy.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/util/SimpleOutHeaderFilterStrategy.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/util/SystemHeadersConstants.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/util/SystemHeadersConstants.java index 2812fdc..d0e007a 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/util/SystemHeadersConstants.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/util/SystemHeadersConstants.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/validator/ValidateInterceptor.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/validator/ValidateInterceptor.java index 18410d1..52d0a33 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/validator/ValidateInterceptor.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/validator/ValidateInterceptor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/java/ru/entaxy/esb/system/common/validator/XmlParser.java b/system/commons/src/main/java/ru/entaxy/esb/system/common/validator/XmlParser.java index 76f5ec2..7ccf71f 100644 --- a/system/commons/src/main/java/ru/entaxy/esb/system/common/validator/XmlParser.java +++ b/system/commons/src/main/java/ru/entaxy/esb/system/common/validator/XmlParser.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/system/commons/src/main/resources/OSGI-INF/blueprint/blueprint.xml index e847141..43e0b51 100644 --- a/system/commons/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/system/commons/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ system-commons ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/commons/src/main/resources/config/bus.commons.cfg b/system/commons/src/main/resources/config/bus.commons.cfg index df365ef..ba8ae19 100644 --- a/system/commons/src/main/resources/config/bus.commons.cfg +++ b/system/commons/src/main/resources/config/bus.commons.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # system-commons # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/core/dispatcher/pom.xml b/system/core/dispatcher/pom.xml index 1e0174b..1ce35e7 100644 --- a/system/core/dispatcher/pom.xml +++ b/system/core/dispatcher/pom.xml @@ -1,14 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system.core system-core - 1.8.2.2 + 1.8.3 ../../core/pom.xml diff --git a/system/core/dispatcher/src/main/java/ru/entaxy/esb/system/core/dispatcher/Addressable.java b/system/core/dispatcher/src/main/java/ru/entaxy/esb/system/core/dispatcher/Addressable.java index 36709f7..2e5c844 100644 --- a/system/core/dispatcher/src/main/java/ru/entaxy/esb/system/core/dispatcher/Addressable.java +++ b/system/core/dispatcher/src/main/java/ru/entaxy/esb/system/core/dispatcher/Addressable.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * dispatcher * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/error-handler/pom.xml b/system/core/error-handler/pom.xml index a8253d8..18309ef 100644 --- a/system/core/error-handler/pom.xml +++ b/system/core/error-handler/pom.xml @@ -1,14 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system.core system-core - 1.8.2.2 + 1.8.3 ../pom.xml diff --git a/system/core/error-handler/src/main/java/ru/entaxy/esb/system/core/common/error/handler/interceptor/HandleOutFaultInterceptor.java b/system/core/error-handler/src/main/java/ru/entaxy/esb/system/core/common/error/handler/interceptor/HandleOutFaultInterceptor.java index 70aca86..3b44f43 100644 --- a/system/core/error-handler/src/main/java/ru/entaxy/esb/system/core/common/error/handler/interceptor/HandleOutFaultInterceptor.java +++ b/system/core/error-handler/src/main/java/ru/entaxy/esb/system/core/common/error/handler/interceptor/HandleOutFaultInterceptor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * error-handler * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/error-handler/src/main/java/ru/entaxy/esb/system/core/common/error/handler/processor/ErrorProcessor.java b/system/core/error-handler/src/main/java/ru/entaxy/esb/system/core/common/error/handler/processor/ErrorProcessor.java index ce698bf..09d736a 100644 --- a/system/core/error-handler/src/main/java/ru/entaxy/esb/system/core/common/error/handler/processor/ErrorProcessor.java +++ b/system/core/error-handler/src/main/java/ru/entaxy/esb/system/core/common/error/handler/processor/ErrorProcessor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * error-handler * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/error-handler/src/main/java/ru/entaxy/esb/system/core/common/error/handler/util/Timestamp.java b/system/core/error-handler/src/main/java/ru/entaxy/esb/system/core/common/error/handler/util/Timestamp.java index 9b778a7..ca9d73a 100644 --- a/system/core/error-handler/src/main/java/ru/entaxy/esb/system/core/common/error/handler/util/Timestamp.java +++ b/system/core/error-handler/src/main/java/ru/entaxy/esb/system/core/common/error/handler/util/Timestamp.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * error-handler * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/error-handler/src/main/resources/OSGI-INF/blueprint/common-error-handler-context.xml b/system/core/error-handler/src/main/resources/OSGI-INF/blueprint/common-error-handler-context.xml index 8a9815c..f7c69b9 100644 --- a/system/core/error-handler/src/main/resources/OSGI-INF/blueprint/common-error-handler-context.xml +++ b/system/core/error-handler/src/main/resources/OSGI-INF/blueprint/common-error-handler-context.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ error-handler ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/error-handler/src/main/resources/xslt/DefaultResponse.xsl b/system/core/error-handler/src/main/resources/xslt/DefaultResponse.xsl index bb85464..0368a93 100644 --- a/system/core/error-handler/src/main/resources/xslt/DefaultResponse.xsl +++ b/system/core/error-handler/src/main/resources/xslt/DefaultResponse.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ error-handler ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/error-handler/src/main/resources/xslt/UniversalErrorPacket.xsl b/system/core/error-handler/src/main/resources/xslt/UniversalErrorPacket.xsl index c8caf22..424fbff 100644 --- a/system/core/error-handler/src/main/resources/xslt/UniversalErrorPacket.xsl +++ b/system/core/error-handler/src/main/resources/xslt/UniversalErrorPacket.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ error-handler ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/error-handler/src/main/resources/xslt/WrapSoapEnvelope.xsl b/system/core/error-handler/src/main/resources/xslt/WrapSoapEnvelope.xsl index 7057ed6..ecbc167 100644 --- a/system/core/error-handler/src/main/resources/xslt/WrapSoapEnvelope.xsl +++ b/system/core/error-handler/src/main/resources/xslt/WrapSoapEnvelope.xsl @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ error-handler ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/error-handler/src/main/resources/xslt/operation/ConfirmGettingPackets.xsl b/system/core/error-handler/src/main/resources/xslt/operation/ConfirmGettingPackets.xsl index f4ceab0..cb8bf21 100644 --- a/system/core/error-handler/src/main/resources/xslt/operation/ConfirmGettingPackets.xsl +++ b/system/core/error-handler/src/main/resources/xslt/operation/ConfirmGettingPackets.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ error-handler ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/error-handler/src/main/resources/xslt/operation/GetPackets.xsl b/system/core/error-handler/src/main/resources/xslt/operation/GetPackets.xsl index f4ceab0..cb8bf21 100644 --- a/system/core/error-handler/src/main/resources/xslt/operation/GetPackets.xsl +++ b/system/core/error-handler/src/main/resources/xslt/operation/GetPackets.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ error-handler ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/error-handler/src/main/resources/xslt/operation/PutPackets.xsl b/system/core/error-handler/src/main/resources/xslt/operation/PutPackets.xsl index f4ceab0..cb8bf21 100644 --- a/system/core/error-handler/src/main/resources/xslt/operation/PutPackets.xsl +++ b/system/core/error-handler/src/main/resources/xslt/operation/PutPackets.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ error-handler ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/error-handler/src/main/resources/xslt/operation/sendAcknowledge.xsl b/system/core/error-handler/src/main/resources/xslt/operation/sendAcknowledge.xsl index 7a6ac05..19c4c21 100644 --- a/system/core/error-handler/src/main/resources/xslt/operation/sendAcknowledge.xsl +++ b/system/core/error-handler/src/main/resources/xslt/operation/sendAcknowledge.xsl @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ error-handler ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/error-handler/src/main/resources/xslt/operation/sendToJMS.xsl b/system/core/error-handler/src/main/resources/xslt/operation/sendToJMS.xsl index 7a6ac05..19c4c21 100644 --- a/system/core/error-handler/src/main/resources/xslt/operation/sendToJMS.xsl +++ b/system/core/error-handler/src/main/resources/xslt/operation/sendToJMS.xsl @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ error-handler ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/error-handler/src/main/resources/xslt/operation/type/response.xsl b/system/core/error-handler/src/main/resources/xslt/operation/type/response.xsl index 3184345..3cccc58 100644 --- a/system/core/error-handler/src/main/resources/xslt/operation/type/response.xsl +++ b/system/core/error-handler/src/main/resources/xslt/operation/type/response.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ error-handler ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/events/events-api/pom.xml b/system/core/events/events-api/pom.xml index 555d1c0..dc4ff37 100644 --- a/system/core/events/events-api/pom.xml +++ b/system/core/events/events-api/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.core.events events - 1.8.2.2 + 1.8.3 ../../events/pom.xml diff --git a/system/core/events/events-api/src/main/java/ru/entaxy/esb/system/core/events/jpa/EventTopicService.java b/system/core/events/events-api/src/main/java/ru/entaxy/esb/system/core/events/jpa/EventTopicService.java index 9a40f80..bf34916 100644 --- a/system/core/events/events-api/src/main/java/ru/entaxy/esb/system/core/events/jpa/EventTopicService.java +++ b/system/core/events/events-api/src/main/java/ru/entaxy/esb/system/core/events/jpa/EventTopicService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-api/src/main/java/ru/entaxy/esb/system/core/events/jpa/SystemSubscriptionService.java b/system/core/events/events-api/src/main/java/ru/entaxy/esb/system/core/events/jpa/SystemSubscriptionService.java index 2e397da..d0a14c1 100644 --- a/system/core/events/events-api/src/main/java/ru/entaxy/esb/system/core/events/jpa/SystemSubscriptionService.java +++ b/system/core/events/events-api/src/main/java/ru/entaxy/esb/system/core/events/jpa/SystemSubscriptionService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-api/src/main/java/ru/entaxy/esb/system/core/events/jpa/entity/EventTopic.java b/system/core/events/events-api/src/main/java/ru/entaxy/esb/system/core/events/jpa/entity/EventTopic.java index 7170e5d..0971f09 100644 --- a/system/core/events/events-api/src/main/java/ru/entaxy/esb/system/core/events/jpa/entity/EventTopic.java +++ b/system/core/events/events-api/src/main/java/ru/entaxy/esb/system/core/events/jpa/entity/EventTopic.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-api/src/main/java/ru/entaxy/esb/system/core/events/jpa/entity/SystemSubscription.java b/system/core/events/events-api/src/main/java/ru/entaxy/esb/system/core/events/jpa/entity/SystemSubscription.java index fb9c275..86eefac 100644 --- a/system/core/events/events-api/src/main/java/ru/entaxy/esb/system/core/events/jpa/entity/SystemSubscription.java +++ b/system/core/events/events-api/src/main/java/ru/entaxy/esb/system/core/events/jpa/entity/SystemSubscription.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-common/pom.xml b/system/core/events/events-common/pom.xml index 534c510..3d39f74 100644 --- a/system/core/events/events-common/pom.xml +++ b/system/core/events/events-common/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.core.events events - 1.8.2.2 + 1.8.3 ../../events/pom.xml diff --git a/system/core/events/events-common/src/main/java/ru/entaxy/esb/system/core/events/common/SubscriptionType.java b/system/core/events/events-common/src/main/java/ru/entaxy/esb/system/core/events/common/SubscriptionType.java index d469056..068c298 100644 --- a/system/core/events/events-common/src/main/java/ru/entaxy/esb/system/core/events/common/SubscriptionType.java +++ b/system/core/events/events-common/src/main/java/ru/entaxy/esb/system/core/events/common/SubscriptionType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-common * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-common/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/system/core/events/events-common/src/main/resources/OSGI-INF/blueprint/blueprint.xml index 2744d9b..73accd2 100644 --- a/system/core/events/events-common/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/system/core/events/events-common/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ events-common ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/events/events-handler/pom.xml b/system/core/events/events-handler/pom.xml index c431cfb..0173d9d 100644 --- a/system/core/events/events-handler/pom.xml +++ b/system/core/events/events-handler/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.core.events events - 1.8.2.2 + 1.8.3 ../../events/pom.xml diff --git a/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/SubscriptionProcessingGenerator.java b/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/SubscriptionProcessingGenerator.java index a392b2c..46a36f2 100644 --- a/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/SubscriptionProcessingGenerator.java +++ b/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/SubscriptionProcessingGenerator.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-handler * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/SubscriptionRouteGenerator.java b/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/SubscriptionRouteGenerator.java index 9f0f4a2..0d9460f 100644 --- a/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/SubscriptionRouteGenerator.java +++ b/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/SubscriptionRouteGenerator.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-handler * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/EventAdminHelper.java b/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/EventAdminHelper.java index 201aea4..0c2c9c6 100644 --- a/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/EventAdminHelper.java +++ b/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/EventAdminHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-handler * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/EventHandlerConstant.java b/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/EventHandlerConstant.java index 290a274..7a5cf86 100644 --- a/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/EventHandlerConstant.java +++ b/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/EventHandlerConstant.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-handler * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/EventHelper.java b/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/EventHelper.java index 00ba075..c224e1c 100644 --- a/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/EventHelper.java +++ b/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/EventHelper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-handler * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/GsonDataFormatInitializer.java b/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/GsonDataFormatInitializer.java index 79e474c..688841e 100644 --- a/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/GsonDataFormatInitializer.java +++ b/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/GsonDataFormatInitializer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-handler * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/HibernateProxyTypeAdapter.java b/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/HibernateProxyTypeAdapter.java index fa7eefc..7dd4861 100644 --- a/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/HibernateProxyTypeAdapter.java +++ b/system/core/events/events-handler/src/main/java/ru/entaxy/esb/system/core/events/handler/util/HibernateProxyTypeAdapter.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-handler * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-handler/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/system/core/events/events-handler/src/main/resources/OSGI-INF/blueprint/blueprint.xml index e9bdcc9..3b808bd 100644 --- a/system/core/events/events-handler/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/system/core/events/events-handler/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ events-handler ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/events/events-impl/pom.xml b/system/core/events/events-impl/pom.xml index a1f392a..1bded7f 100644 --- a/system/core/events/events-impl/pom.xml +++ b/system/core/events/events-impl/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.core.events events - 1.8.2.2 + 1.8.3 ../../events/pom.xml diff --git a/system/core/events/events-impl/src/main/java/ru/entaxy/esb/system/core/events/jpa/impl/EventTopicServiceImpl.java b/system/core/events/events-impl/src/main/java/ru/entaxy/esb/system/core/events/jpa/impl/EventTopicServiceImpl.java index 5635e46..a502707 100644 --- a/system/core/events/events-impl/src/main/java/ru/entaxy/esb/system/core/events/jpa/impl/EventTopicServiceImpl.java +++ b/system/core/events/events-impl/src/main/java/ru/entaxy/esb/system/core/events/jpa/impl/EventTopicServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-impl/src/main/java/ru/entaxy/esb/system/core/events/jpa/impl/SystemSubscriptionServiceImpl.java b/system/core/events/events-impl/src/main/java/ru/entaxy/esb/system/core/events/jpa/impl/SystemSubscriptionServiceImpl.java index 1f0122d..b4ce013 100644 --- a/system/core/events/events-impl/src/main/java/ru/entaxy/esb/system/core/events/jpa/impl/SystemSubscriptionServiceImpl.java +++ b/system/core/events/events-impl/src/main/java/ru/entaxy/esb/system/core/events/jpa/impl/SystemSubscriptionServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/system/core/events/events-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml index 0556ae6..52e676f 100644 --- a/system/core/events/events-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/system/core/events/events-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ events-impl ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/events/events-impl/src/main/resources/hibernate.cfg.xml b/system/core/events/events-impl/src/main/resources/hibernate.cfg.xml index 0a4a1b5..318ef54 100644 --- a/system/core/events/events-impl/src/main/resources/hibernate.cfg.xml +++ b/system/core/events/events-impl/src/main/resources/hibernate.cfg.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ events-impl ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/events/events-rest/pom.xml b/system/core/events/events-rest/pom.xml index 573daaf..65c2b9e 100644 --- a/system/core/events/events-rest/pom.xml +++ b/system/core/events/events-rest/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.core.events events - 1.8.2.2 + 1.8.3 ../../events/pom.xml diff --git a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/ManagementService.java b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/ManagementService.java index 25532a7..c1fce34 100644 --- a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/ManagementService.java +++ b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/ManagementService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-rest * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/SubscriptionService.java b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/SubscriptionService.java index 8d9c887..da18b1c 100644 --- a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/SubscriptionService.java +++ b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/SubscriptionService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-rest * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/TopicProcessor.java b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/TopicProcessor.java index 3fcbff7..e0ebccf 100644 --- a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/TopicProcessor.java +++ b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/TopicProcessor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-rest * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/aggregation/ResponseAggregator.java b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/aggregation/ResponseAggregator.java index ff841df..11d62f7 100644 --- a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/aggregation/ResponseAggregator.java +++ b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/aggregation/ResponseAggregator.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-rest * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/SubscriptionNotFound.java b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/SubscriptionNotFound.java index 724dd7a..8390822 100644 --- a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/SubscriptionNotFound.java +++ b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/SubscriptionNotFound.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-rest * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/SubscriptionTypeModificationException.java b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/SubscriptionTypeModificationException.java index 7ad874a..56305ae 100644 --- a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/SubscriptionTypeModificationException.java +++ b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/SubscriptionTypeModificationException.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-rest * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/SystemNotFound.java b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/SystemNotFound.java index 33a32a3..da19486 100644 --- a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/SystemNotFound.java +++ b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/SystemNotFound.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-rest * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/TopicAlreadyExist.java b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/TopicAlreadyExist.java index 97a57b7..6da5a3c 100644 --- a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/TopicAlreadyExist.java +++ b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/TopicAlreadyExist.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-rest * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/TopicNotFound.java b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/TopicNotFound.java index cd68257..833cbbe 100644 --- a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/TopicNotFound.java +++ b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/TopicNotFound.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-rest * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/UnknownSubscriptionType.java b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/UnknownSubscriptionType.java index ea515ab..30cb944 100644 --- a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/UnknownSubscriptionType.java +++ b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/exception/UnknownSubscriptionType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-rest * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/CleanResponse.java b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/CleanResponse.java index c9a96ac..435bcb0 100644 --- a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/CleanResponse.java +++ b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/CleanResponse.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-rest * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/CreateTopicResponse.java b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/CreateTopicResponse.java index 87b88e2..02b719e 100644 --- a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/CreateTopicResponse.java +++ b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/CreateTopicResponse.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-rest * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/JsonErrorResponse.java b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/JsonErrorResponse.java index e97f63b..30989fb 100644 --- a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/JsonErrorResponse.java +++ b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/JsonErrorResponse.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-rest * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/JsonSuccessResponse.java b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/JsonSuccessResponse.java index 14f970c..54f41f5 100644 --- a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/JsonSuccessResponse.java +++ b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/JsonSuccessResponse.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-rest * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/Response.java b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/Response.java index bab62b9..7171aef 100644 --- a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/Response.java +++ b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/Response.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-rest * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/SubscriptionResponse.java b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/SubscriptionResponse.java index d24cd8c..22e948c 100644 --- a/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/SubscriptionResponse.java +++ b/system/core/events/events-rest/src/main/java/ru/entaxy/esb/system/core/events/rest/response/SubscriptionResponse.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * events-rest * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/events/events-rest/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/system/core/events/events-rest/src/main/resources/OSGI-INF/blueprint/blueprint.xml index c0ca21d..a4d97b8 100644 --- a/system/core/events/events-rest/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/system/core/events/events-rest/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ events-rest ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/events/pom.xml b/system/core/events/pom.xml index 25dc4d2..8c1e5ab 100644 --- a/system/core/events/pom.xml +++ b/system/core/events/pom.xml @@ -1,14 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system.core system-core - 1.8.2.2 + 1.8.3 ../../core/pom.xml diff --git a/system/core/pom.xml b/system/core/pom.xml index 6c67d6e..837697b 100644 --- a/system/core/pom.xml +++ b/system/core/pom.xml @@ -1,14 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system system-parent - 1.8.2.2 + 1.8.3 ru.entaxy.esb.system.core diff --git a/system/core/security/permission-api/pom.xml b/system/core/security/permission-api/pom.xml index 487361d..f049f57 100644 --- a/system/core/security/permission-api/pom.xml +++ b/system/core/security/permission-api/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.core.permission permission - 1.8.2.2 + 1.8.3 ../../security/pom.xml diff --git a/system/core/security/permission-api/src/main/java/ru/entaxy/esb/system/core/permission/jpa/PermissionService.java b/system/core/security/permission-api/src/main/java/ru/entaxy/esb/system/core/permission/jpa/PermissionService.java index 5dc1810..379bd1e 100644 --- a/system/core/security/permission-api/src/main/java/ru/entaxy/esb/system/core/permission/jpa/PermissionService.java +++ b/system/core/security/permission-api/src/main/java/ru/entaxy/esb/system/core/permission/jpa/PermissionService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-api/src/main/java/ru/entaxy/esb/system/core/permission/jpa/entity/Permission.java b/system/core/security/permission-api/src/main/java/ru/entaxy/esb/system/core/permission/jpa/entity/Permission.java index f370afe..96db1b2 100644 --- a/system/core/security/permission-api/src/main/java/ru/entaxy/esb/system/core/permission/jpa/entity/Permission.java +++ b/system/core/security/permission-api/src/main/java/ru/entaxy/esb/system/core/permission/jpa/entity/Permission.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-common/pom.xml b/system/core/security/permission-common/pom.xml index 5c6cd6c..f1df86c 100644 --- a/system/core/security/permission-common/pom.xml +++ b/system/core/security/permission-common/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.core.permission permission - 1.8.2.2 + 1.8.3 ../../security/pom.xml diff --git a/system/core/security/permission-common/src/main/java/ru/entaxy/esb/system/core/permission/common/PermissionConstants.java b/system/core/security/permission-common/src/main/java/ru/entaxy/esb/system/core/permission/common/PermissionConstants.java index e556ab6..c95e06e 100644 --- a/system/core/security/permission-common/src/main/java/ru/entaxy/esb/system/core/permission/common/PermissionConstants.java +++ b/system/core/security/permission-common/src/main/java/ru/entaxy/esb/system/core/permission/common/PermissionConstants.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-common * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-common/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/system/core/security/permission-common/src/main/resources/OSGI-INF/blueprint/blueprint.xml index ae03f92..be8ea3c 100644 --- a/system/core/security/permission-common/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/system/core/security/permission-common/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ permission-common ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/pom.xml b/system/core/security/permission-component/pom.xml index 34f729c..a09e106 100644 --- a/system/core/security/permission-component/pom.xml +++ b/system/core/security/permission-component/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.core.permission permission - 1.8.2.2 + 1.8.3 ../../security/pom.xml diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/PermissionComponent.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/PermissionComponent.java index 9c02e5e..55b4283 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/PermissionComponent.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/PermissionComponent.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/PermissionEndpoint.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/PermissionEndpoint.java index 2dfb62c..0a450d2 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/PermissionEndpoint.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/PermissionEndpoint.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/PermissionProducer.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/PermissionProducer.java index 73cba64..b400f10 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/PermissionProducer.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/PermissionProducer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/exception/UnknownOperationException.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/exception/UnknownOperationException.java index cfd745a..260e001 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/exception/UnknownOperationException.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/exception/UnknownOperationException.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/BaseOperation.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/BaseOperation.java index daea307..b45cc9e 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/BaseOperation.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/BaseOperation.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/BulkCreate.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/BulkCreate.java index a7e31cb..64c2b7d 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/BulkCreate.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/BulkCreate.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Check.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Check.java index 449145e..23b33cc 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Check.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Check.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/CheckSystemAccess.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/CheckSystemAccess.java index b55e1d2..c4497b6 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/CheckSystemAccess.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/CheckSystemAccess.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/CheckSystemAccessWithException.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/CheckSystemAccessWithException.java index 84ca917..1a8a0c0 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/CheckSystemAccessWithException.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/CheckSystemAccessWithException.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/CheckWithException.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/CheckWithException.java index 16dba40..7d70c16 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/CheckWithException.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/CheckWithException.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Create.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Create.java index 8001230..df52a13 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Create.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Create.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Delete.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Delete.java index 0dff21a..5ca8e74 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Delete.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Delete.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Get.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Get.java index 53e1fe8..441e87c 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Get.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Get.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/GetByAllParams.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/GetByAllParams.java index 7eee680..09a191e 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/GetByAllParams.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/GetByAllParams.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Operation.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Operation.java index c7aa3a8..5c3e939 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Operation.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Operation.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/OperationFactory.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/OperationFactory.java index 09c1c18..021a0a2 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/OperationFactory.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/OperationFactory.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Update.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Update.java index 589bf71..336224f 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Update.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/operation/Update.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/util/PermissionComponentConstants.java b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/util/PermissionComponentConstants.java index 8f0c1c5..8b61e10 100644 --- a/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/util/PermissionComponentConstants.java +++ b/system/core/security/permission-component/src/main/java/ru/entaxy/esb/system/core/permission/component/util/PermissionComponentConstants.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-component/src/main/resources/log4j2.properties b/system/core/security/permission-component/src/main/resources/log4j2.properties index 2be713d..ed2a352 100644 --- a/system/core/security/permission-component/src/main/resources/log4j2.properties +++ b/system/core/security/permission-component/src/main/resources/log4j2.properties @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # permission-component # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-handler/pom.xml b/system/core/security/permission-handler/pom.xml index 6a8b038..6dfa413 100644 --- a/system/core/security/permission-handler/pom.xml +++ b/system/core/security/permission-handler/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.core.permission permission - 1.8.2.2 + 1.8.3 ../../security/pom.xml diff --git a/system/core/security/permission-handler/src/main/java/ru/entaxy/esb/system/core/permission/handler/PermissionChecker.java b/system/core/security/permission-handler/src/main/java/ru/entaxy/esb/system/core/permission/handler/PermissionChecker.java index c176701..15d71c9 100644 --- a/system/core/security/permission-handler/src/main/java/ru/entaxy/esb/system/core/permission/handler/PermissionChecker.java +++ b/system/core/security/permission-handler/src/main/java/ru/entaxy/esb/system/core/permission/handler/PermissionChecker.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-handler * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-handler/src/main/java/ru/entaxy/esb/system/core/permission/handler/PermissionCheckerImpl.java b/system/core/security/permission-handler/src/main/java/ru/entaxy/esb/system/core/permission/handler/PermissionCheckerImpl.java index 3474268..b323e78 100644 --- a/system/core/security/permission-handler/src/main/java/ru/entaxy/esb/system/core/permission/handler/PermissionCheckerImpl.java +++ b/system/core/security/permission-handler/src/main/java/ru/entaxy/esb/system/core/permission/handler/PermissionCheckerImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-handler * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-handler/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/system/core/security/permission-handler/src/main/resources/OSGI-INF/blueprint/blueprint.xml index df9007f..ec5f80f 100644 --- a/system/core/security/permission-handler/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/system/core/security/permission-handler/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ permission-handler ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-impl/pom.xml b/system/core/security/permission-impl/pom.xml index 88dde4f..5e98f6b 100644 --- a/system/core/security/permission-impl/pom.xml +++ b/system/core/security/permission-impl/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.core.permission permission - 1.8.2.2 + 1.8.3 ../../security/pom.xml diff --git a/system/core/security/permission-impl/src/main/java/ru/entaxy/esb/system/core/permission/interceptor/ServiceInterceptor.java b/system/core/security/permission-impl/src/main/java/ru/entaxy/esb/system/core/permission/interceptor/ServiceInterceptor.java index 10ed16f..8bbb8c6 100644 --- a/system/core/security/permission-impl/src/main/java/ru/entaxy/esb/system/core/permission/interceptor/ServiceInterceptor.java +++ b/system/core/security/permission-impl/src/main/java/ru/entaxy/esb/system/core/permission/interceptor/ServiceInterceptor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-impl/src/main/java/ru/entaxy/esb/system/core/permission/jpa/impl/PermissionServiceImpl.java b/system/core/security/permission-impl/src/main/java/ru/entaxy/esb/system/core/permission/jpa/impl/PermissionServiceImpl.java index 9472c68..d3c6329 100644 --- a/system/core/security/permission-impl/src/main/java/ru/entaxy/esb/system/core/permission/jpa/impl/PermissionServiceImpl.java +++ b/system/core/security/permission-impl/src/main/java/ru/entaxy/esb/system/core/permission/jpa/impl/PermissionServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/system/core/security/permission-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml index 466e768..3478800 100644 --- a/system/core/security/permission-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/system/core/security/permission-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ permission-impl ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-impl/src/main/resources/hibernate.cfg.xml b/system/core/security/permission-impl/src/main/resources/hibernate.cfg.xml index 32dc589..0423376 100644 --- a/system/core/security/permission-impl/src/main/resources/hibernate.cfg.xml +++ b/system/core/security/permission-impl/src/main/resources/hibernate.cfg.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ permission-impl ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-soap/pom.xml b/system/core/security/permission-soap/pom.xml index 7c31437..b637bc1 100644 --- a/system/core/security/permission-soap/pom.xml +++ b/system/core/security/permission-soap/pom.xml @@ -1,12 +1,11 @@ - + 4.0.0 ru.entaxy.esb.system.core.permission permission - 1.8.2.2 + 1.8.3 permission-soap diff --git a/system/core/security/permission-soap/src/main/resources/OSGI-INF/blueprint/camel-context.xml b/system/core/security/permission-soap/src/main/resources/OSGI-INF/blueprint/camel-context.xml index d6e90e2..da333c3 100644 --- a/system/core/security/permission-soap/src/main/resources/OSGI-INF/blueprint/camel-context.xml +++ b/system/core/security/permission-soap/src/main/resources/OSGI-INF/blueprint/camel-context.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ permission-soap ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-soap/src/main/resources/ru/entaxy/esb/system/core/permission/template/permission.xsl b/system/core/security/permission-soap/src/main/resources/ru/entaxy/esb/system/core/permission/template/permission.xsl index 843c3ef..d81b265 100644 --- a/system/core/security/permission-soap/src/main/resources/ru/entaxy/esb/system/core/permission/template/permission.xsl +++ b/system/core/security/permission-soap/src/main/resources/ru/entaxy/esb/system/core/permission/template/permission.xsl @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ permission-soap ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/security/permission-soap/src/main/resources/types/permission.ftl b/system/core/security/permission-soap/src/main/resources/types/permission.ftl index a7f8dd5..bf2d583 100644 --- a/system/core/security/permission-soap/src/main/resources/types/permission.ftl +++ b/system/core/security/permission-soap/src/main/resources/types/permission.ftl @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ permission-soap ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/core/security/pom.xml b/system/core/security/pom.xml index 970bbc3..78ceac9 100644 --- a/system/core/security/pom.xml +++ b/system/core/security/pom.xml @@ -1,13 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system.core system-core - 1.8.2.2 + 1.8.3 ../../core/pom.xml diff --git a/system/core/template/pom.xml b/system/core/template/pom.xml index 60d9e08..d12795e 100644 --- a/system/core/template/pom.xml +++ b/system/core/template/pom.xml @@ -1,11 +1,9 @@ - + system-core ru.entaxy.esb.system.core - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/system/core/template/src/main/java/ru/entaxy/esb/system/core/template/Template.java b/system/core/template/src/main/java/ru/entaxy/esb/system/core/template/Template.java index c0dd25a..b3b499f 100644 --- a/system/core/template/src/main/java/ru/entaxy/esb/system/core/template/Template.java +++ b/system/core/template/src/main/java/ru/entaxy/esb/system/core/template/Template.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * template * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/template/src/main/java/ru/entaxy/esb/system/core/template/TemplateCollector.java b/system/core/template/src/main/java/ru/entaxy/esb/system/core/template/TemplateCollector.java index 01302e6..e83dbdc 100644 --- a/system/core/template/src/main/java/ru/entaxy/esb/system/core/template/TemplateCollector.java +++ b/system/core/template/src/main/java/ru/entaxy/esb/system/core/template/TemplateCollector.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * template * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/core/template/src/main/java/ru/entaxy/esb/system/core/template/TemplateImpl.java b/system/core/template/src/main/java/ru/entaxy/esb/system/core/template/TemplateImpl.java index b964cba..db5fe2e 100644 --- a/system/core/template/src/main/java/ru/entaxy/esb/system/core/template/TemplateImpl.java +++ b/system/core/template/src/main/java/ru/entaxy/esb/system/core/template/TemplateImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * template * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/pom.xml b/system/pom.xml index 8556a47..21da4d2 100644 --- a/system/pom.xml +++ b/system/pom.xml @@ -1,12 +1,11 @@ - + 4.0.0 ru.entaxy.esb root - 1.8.2.2 + 1.8.3 ru.entaxy.esb.system @@ -141,6 +140,77 @@ + + + features-basics + + + + + maven-resources-plugin + + + copy-features-bsics + validate + + copy-resources + + + ${project.build.directory}/features + + + src/main/features + true + + **/basics.xml + + + + + + + + + org.codehaus.mojo + build-helper-maven-plugin + + + attach-features-basics + package + + attach-artifact + + + + + target/features/basics.xml + xml + basics + + + + + + + + + + + src/main/features/basics.xml + + + + + diff --git a/system/registry/connectors/connector-api/pom.xml b/system/registry/connectors/connector-api/pom.xml index f9b6f36..cafa23a 100644 --- a/system/registry/connectors/connector-api/pom.xml +++ b/system/registry/connectors/connector-api/pom.xml @@ -1,11 +1,9 @@ - + ru.entaxy.esb.system.registry.connector connectors - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/system/registry/connectors/connector-api/src/main/java/ru/entaxy/esb/system/connector/entity/Connector.java b/system/registry/connectors/connector-api/src/main/java/ru/entaxy/esb/system/connector/entity/Connector.java index 6d9a107..cfae6ba 100644 --- a/system/registry/connectors/connector-api/src/main/java/ru/entaxy/esb/system/connector/entity/Connector.java +++ b/system/registry/connectors/connector-api/src/main/java/ru/entaxy/esb/system/connector/entity/Connector.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connector-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/connectors/connector-api/src/main/java/ru/entaxy/esb/system/connector/entity/ConnectorParam.java b/system/registry/connectors/connector-api/src/main/java/ru/entaxy/esb/system/connector/entity/ConnectorParam.java index c902469..046750b 100644 --- a/system/registry/connectors/connector-api/src/main/java/ru/entaxy/esb/system/connector/entity/ConnectorParam.java +++ b/system/registry/connectors/connector-api/src/main/java/ru/entaxy/esb/system/connector/entity/ConnectorParam.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connector-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/connectors/connector-impl/pom.xml b/system/registry/connectors/connector-impl/pom.xml index ad6a80f..53f26d6 100644 --- a/system/registry/connectors/connector-impl/pom.xml +++ b/system/registry/connectors/connector-impl/pom.xml @@ -1,11 +1,9 @@ - + ru.entaxy.esb.system.registry.connector connectors - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/system/registry/connectors/connector-impl/src/main/java/ru/entaxy/esb/system/connector/impl/ConnectorService.java b/system/registry/connectors/connector-impl/src/main/java/ru/entaxy/esb/system/connector/impl/ConnectorService.java index f860d03..92a30a8 100644 --- a/system/registry/connectors/connector-impl/src/main/java/ru/entaxy/esb/system/connector/impl/ConnectorService.java +++ b/system/registry/connectors/connector-impl/src/main/java/ru/entaxy/esb/system/connector/impl/ConnectorService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connector-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -40,5 +40,7 @@ public interface ConnectorService { Connector addConnector(System system, Connector connector); + Connector addNewConnector(System system, Connector connector); + Connector setBundleEntity(Connector connector, BundleEntity bundleEntity); } diff --git a/system/registry/connectors/connector-impl/src/main/java/ru/entaxy/esb/system/connector/impl/ConnectorServiceImpl.java b/system/registry/connectors/connector-impl/src/main/java/ru/entaxy/esb/system/connector/impl/ConnectorServiceImpl.java index 838c252..e21fbc2 100644 --- a/system/registry/connectors/connector-impl/src/main/java/ru/entaxy/esb/system/connector/impl/ConnectorServiceImpl.java +++ b/system/registry/connectors/connector-impl/src/main/java/ru/entaxy/esb/system/connector/impl/ConnectorServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connector-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -139,6 +139,21 @@ public class ConnectorServiceImpl implements ConnectorService { return connectorEntity; } + @Override + public Connector addNewConnector(System system, Connector connector) { + Connector connectorEntity = getNewConnector(system, connector.getName()); + if (connectorEntity == null) { + connectorEntity = connector; + connectorEntity.setSystemId(system.getId()); + system.getConnectors().add(connectorEntity); + } else { + connectorEntity.setEditDate(connector.getCreateDate()); + connectorEntity.setEditedBy(connector.getCreatedBy()); + } + this.saveOrUpdate(system); + return connectorEntity; + } + @Override public Connector setBundleEntity(Connector connector, BundleEntity bundleEntity) { bundleEntity.setVersion(connector.getVersion()); @@ -177,4 +192,12 @@ public class ConnectorServiceImpl implements ConnectorService { } return null; } + + private Connector getNewConnector(System system, String name) { + for (Connector connector : system.getConnectors()) { + if (name.equals(connector.getName())) + return connector; + } + return null; + } } diff --git a/system/registry/connectors/connector-impl/src/main/resources/OSGI-INF/blueprint/camel-context.xml b/system/registry/connectors/connector-impl/src/main/resources/OSGI-INF/blueprint/camel-context.xml index 03b0ce5..3fc3811 100644 --- a/system/registry/connectors/connector-impl/src/main/resources/OSGI-INF/blueprint/camel-context.xml +++ b/system/registry/connectors/connector-impl/src/main/resources/OSGI-INF/blueprint/camel-context.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ connector-impl ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/registry/connectors/connector-impl/src/main/resources/hibernate.cfg.xml b/system/registry/connectors/connector-impl/src/main/resources/hibernate.cfg.xml index dd49927..d20a064 100644 --- a/system/registry/connectors/connector-impl/src/main/resources/hibernate.cfg.xml +++ b/system/registry/connectors/connector-impl/src/main/resources/hibernate.cfg.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ connector-impl ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/registry/connectors/pom.xml b/system/registry/connectors/pom.xml index bfb8e40..527f429 100644 --- a/system/registry/connectors/pom.xml +++ b/system/registry/connectors/pom.xml @@ -1,11 +1,9 @@ - + ru.entaxy.esb.system.registry registry - 1.8.2.2 + 1.8.3 ../../registry/pom.xml 4.0.0 diff --git a/system/registry/pom.xml b/system/registry/pom.xml index 4eb1ab6..e62b038 100644 --- a/system/registry/pom.xml +++ b/system/registry/pom.xml @@ -1,13 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system system-parent - 1.8.2.2 + 1.8.3 ru.entaxy.esb.system.registry diff --git a/system/registry/processes/pom.xml b/system/registry/processes/pom.xml index 1b094eb..1c1b3d4 100644 --- a/system/registry/processes/pom.xml +++ b/system/registry/processes/pom.xml @@ -1,13 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system.registry registry - 1.8.2.2 + 1.8.3 ../../registry/pom.xml diff --git a/system/registry/processes/src/main/java/ru/entaxy/esb/system/registry/processes/EntryPoint.java b/system/registry/processes/src/main/java/ru/entaxy/esb/system/registry/processes/EntryPoint.java index 7fe0205..b8b3b53 100644 --- a/system/registry/processes/src/main/java/ru/entaxy/esb/system/registry/processes/EntryPoint.java +++ b/system/registry/processes/src/main/java/ru/entaxy/esb/system/registry/processes/EntryPoint.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * processes * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/profile-commons/pom.xml b/system/registry/profile-commons/pom.xml index deca66e..b7e9e0a 100644 --- a/system/registry/profile-commons/pom.xml +++ b/system/registry/profile-commons/pom.xml @@ -1,13 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system.registry registry - 1.8.2.2 + 1.8.3 ../../registry/pom.xml diff --git a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/CommonProfile.java b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/CommonProfile.java index 2f77e0c..81119d2 100644 --- a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/CommonProfile.java +++ b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/CommonProfile.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/ConnectorRegistry.java b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/ConnectorRegistry.java index db1759d..ac2a61d 100644 --- a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/ConnectorRegistry.java +++ b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/ConnectorRegistry.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/InConnectorCollector.java b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/InConnectorCollector.java index 44e3a90..dcaee01 100644 --- a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/InConnectorCollector.java +++ b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/InConnectorCollector.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/Profile.java b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/Profile.java index 5aba51c..6f48da2 100644 --- a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/Profile.java +++ b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/Profile.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/CommonConnector.java b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/CommonConnector.java index 8f2cc9f..f2bb755 100644 --- a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/CommonConnector.java +++ b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/CommonConnector.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/Connector.java b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/Connector.java index 0615aaa..5cd6d72 100644 --- a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/Connector.java +++ b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/Connector.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/in/DirectVMInConnectorImpl.java b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/in/DirectVMInConnectorImpl.java index 581789e..e9f80b2 100644 --- a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/in/DirectVMInConnectorImpl.java +++ b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/in/DirectVMInConnectorImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/in/InConnector.java b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/in/InConnector.java index c35862b..4ca5ef5 100644 --- a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/in/InConnector.java +++ b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/in/InConnector.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/out/DirectVMOutConnectorImpl.java b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/out/DirectVMOutConnectorImpl.java index dc0368a..8ecdef9 100644 --- a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/out/DirectVMOutConnectorImpl.java +++ b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/out/DirectVMOutConnectorImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/out/OutConnector.java b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/out/OutConnector.java index b274c9d..10d3fe5 100644 --- a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/out/OutConnector.java +++ b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/connectors/out/OutConnector.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/profile_output/ProfileOutput.java b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/profile_output/ProfileOutput.java index 40d06e3..fcbb870 100644 --- a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/profile_output/ProfileOutput.java +++ b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/profile_output/ProfileOutput.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/profile_output/ProfileOutputImpl.java b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/profile_output/ProfileOutputImpl.java index 45d6248..9632b40 100644 --- a/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/profile_output/ProfileOutputImpl.java +++ b/system/registry/profile-commons/src/main/java/ru/entaxy/esb/system/profile/commons/profile_output/ProfileOutputImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-commons * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/profile-commons/src/main/resources/log4j2.properties b/system/registry/profile-commons/src/main/resources/log4j2.properties index eb9c134..5cb5e29 100644 --- a/system/registry/profile-commons/src/main/resources/log4j2.properties +++ b/system/registry/profile-commons/src/main/resources/log4j2.properties @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # profile-commons # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/pom.xml b/system/registry/system-groups/pom.xml index 0cf418a..58f6270 100644 --- a/system/registry/system-groups/pom.xml +++ b/system/registry/system-groups/pom.xml @@ -1,13 +1,11 @@ - + 4.0.0 ru.entaxy.esb.system.registry registry - 1.8.2.2 + 1.8.3 ../../registry/pom.xml diff --git a/system/registry/system-groups/system-group-api/pom.xml b/system/registry/system-groups/system-group-api/pom.xml index f70bad1..5154139 100644 --- a/system/registry/system-groups/system-group-api/pom.xml +++ b/system/registry/system-groups/system-group-api/pom.xml @@ -1,11 +1,9 @@ - + system-groups ru.entaxy.esb.system.registry.system-groups - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/system/registry/system-groups/system-group-api/src/main/java/ru/entaxy/esb/system/groups/registry/jpa/SystemGroupRegistryService.java b/system/registry/system-groups/system-group-api/src/main/java/ru/entaxy/esb/system/groups/registry/jpa/SystemGroupRegistryService.java index 400dd67..0b980a6 100644 --- a/system/registry/system-groups/system-group-api/src/main/java/ru/entaxy/esb/system/groups/registry/jpa/SystemGroupRegistryService.java +++ b/system/registry/system-groups/system-group-api/src/main/java/ru/entaxy/esb/system/groups/registry/jpa/SystemGroupRegistryService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-group-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/system-group-api/src/main/java/ru/entaxy/esb/system/groups/registry/jpa/entity/SystemGroupMethodRegistry.java b/system/registry/system-groups/system-group-api/src/main/java/ru/entaxy/esb/system/groups/registry/jpa/entity/SystemGroupMethodRegistry.java index 3300cb4..613acfc 100644 --- a/system/registry/system-groups/system-group-api/src/main/java/ru/entaxy/esb/system/groups/registry/jpa/entity/SystemGroupMethodRegistry.java +++ b/system/registry/system-groups/system-group-api/src/main/java/ru/entaxy/esb/system/groups/registry/jpa/entity/SystemGroupMethodRegistry.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-group-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/system-group-api/src/main/java/ru/entaxy/esb/system/groups/registry/jpa/entity/SystemGroupRegistry.java b/system/registry/system-groups/system-group-api/src/main/java/ru/entaxy/esb/system/groups/registry/jpa/entity/SystemGroupRegistry.java index 3df173d..4e385b2 100644 --- a/system/registry/system-groups/system-group-api/src/main/java/ru/entaxy/esb/system/groups/registry/jpa/entity/SystemGroupRegistry.java +++ b/system/registry/system-groups/system-group-api/src/main/java/ru/entaxy/esb/system/groups/registry/jpa/entity/SystemGroupRegistry.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-group-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/system-group-component/pom.xml b/system/registry/system-groups/system-group-component/pom.xml index 76dd27a..011d46d 100644 --- a/system/registry/system-groups/system-group-component/pom.xml +++ b/system/registry/system-groups/system-group-component/pom.xml @@ -1,11 +1,9 @@ - + system-groups ru.entaxy.esb.system.registry.system-groups - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/SystemGroupComponent.java b/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/SystemGroupComponent.java index 19cd8d0..6f39791 100644 --- a/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/SystemGroupComponent.java +++ b/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/SystemGroupComponent.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-group-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/SystemGroupConsumer.java b/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/SystemGroupConsumer.java index 232d17f..f4dd473 100644 --- a/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/SystemGroupConsumer.java +++ b/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/SystemGroupConsumer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-group-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/SystemGroupEndpoint.java b/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/SystemGroupEndpoint.java index ee1dbfe..0cbbe37 100644 --- a/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/SystemGroupEndpoint.java +++ b/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/SystemGroupEndpoint.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-group-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/SystemGroupProducer.java b/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/SystemGroupProducer.java index 214e12e..6bf7aa2 100644 --- a/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/SystemGroupProducer.java +++ b/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/SystemGroupProducer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-group-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/util/SystemGroupConstants.java b/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/util/SystemGroupConstants.java index 5f71219..e16c5f3 100644 --- a/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/util/SystemGroupConstants.java +++ b/system/registry/system-groups/system-group-component/src/main/java/ru/entaxy/esb/system/groups/component/util/SystemGroupConstants.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-group-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/system-group-component/src/main/resources/log4j2.properties b/system/registry/system-groups/system-group-component/src/main/resources/log4j2.properties index e2fb9bc..75c788f 100644 --- a/system/registry/system-groups/system-group-component/src/main/resources/log4j2.properties +++ b/system/registry/system-groups/system-group-component/src/main/resources/log4j2.properties @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # system-group-component # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/system-group-impl/pom.xml b/system/registry/system-groups/system-group-impl/pom.xml index ec9b79f..fa86531 100644 --- a/system/registry/system-groups/system-group-impl/pom.xml +++ b/system/registry/system-groups/system-group-impl/pom.xml @@ -1,11 +1,9 @@ - + system-groups ru.entaxy.esb.system.registry.system-groups - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/system/registry/system-groups/system-group-impl/src/main/java/ru/entaxy/esb/system/groups/registry/jpa/impl/SystemGroupRegistryServiceImpl.java b/system/registry/system-groups/system-group-impl/src/main/java/ru/entaxy/esb/system/groups/registry/jpa/impl/SystemGroupRegistryServiceImpl.java index 654cd77..d7a0831 100644 --- a/system/registry/system-groups/system-group-impl/src/main/java/ru/entaxy/esb/system/groups/registry/jpa/impl/SystemGroupRegistryServiceImpl.java +++ b/system/registry/system-groups/system-group-impl/src/main/java/ru/entaxy/esb/system/groups/registry/jpa/impl/SystemGroupRegistryServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-group-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/system-group-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/system/registry/system-groups/system-group-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml index a4a08e0..eb90c3d 100644 --- a/system/registry/system-groups/system-group-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/system/registry/system-groups/system-group-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ system-group-impl ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/system-group-impl/src/main/resources/hibernate.cfg.xml b/system/registry/system-groups/system-group-impl/src/main/resources/hibernate.cfg.xml index 3ef5a94..8847676 100644 --- a/system/registry/system-groups/system-group-impl/src/main/resources/hibernate.cfg.xml +++ b/system/registry/system-groups/system-group-impl/src/main/resources/hibernate.cfg.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ system-group-impl ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/system-group-profile/pom.xml b/system/registry/system-groups/system-group-profile/pom.xml index 4a5e2e1..1328e2a 100644 --- a/system/registry/system-groups/system-group-profile/pom.xml +++ b/system/registry/system-groups/system-group-profile/pom.xml @@ -1,11 +1,9 @@ - + ru.entaxy.esb.system.registry.system-groups system-groups - 1.8.2.2 + 1.8.3 ../../system-groups/pom.xml diff --git a/system/registry/system-groups/system-group-profile/system-group-profile-api/pom.xml b/system/registry/system-groups/system-group-profile/system-group-profile-api/pom.xml index 8c44d5c..f8287c2 100644 --- a/system/registry/system-groups/system-group-profile/system-group-profile-api/pom.xml +++ b/system/registry/system-groups/system-group-profile/system-group-profile-api/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.registry.system-groups.profile system-group-profile - 1.8.2.2 + 1.8.3 ../../system-group-profile/pom.xml diff --git a/system/registry/system-groups/system-group-profile/system-group-profile-api/src/main/java/ru/entaxy/esb/system/groups/registry/system/groups/profile/SystemGroupCollectorListener.java b/system/registry/system-groups/system-group-profile/system-group-profile-api/src/main/java/ru/entaxy/esb/system/groups/registry/system/groups/profile/SystemGroupCollectorListener.java index 9ae008e..ec451aa 100644 --- a/system/registry/system-groups/system-group-profile/system-group-profile-api/src/main/java/ru/entaxy/esb/system/groups/registry/system/groups/profile/SystemGroupCollectorListener.java +++ b/system/registry/system-groups/system-group-profile/system-group-profile-api/src/main/java/ru/entaxy/esb/system/groups/registry/system/groups/profile/SystemGroupCollectorListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-group-profile-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/system-group-profile/system-group-profile-api/src/main/java/ru/entaxy/esb/system/groups/registry/system/groups/profile/SystemGroupProfile.java b/system/registry/system-groups/system-group-profile/system-group-profile-api/src/main/java/ru/entaxy/esb/system/groups/registry/system/groups/profile/SystemGroupProfile.java index 02faa1b..2799798 100644 --- a/system/registry/system-groups/system-group-profile/system-group-profile-api/src/main/java/ru/entaxy/esb/system/groups/registry/system/groups/profile/SystemGroupProfile.java +++ b/system/registry/system-groups/system-group-profile/system-group-profile-api/src/main/java/ru/entaxy/esb/system/groups/registry/system/groups/profile/SystemGroupProfile.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-group-profile-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/system-group-profile/system-group-profile-collector/pom.xml b/system/registry/system-groups/system-group-profile/system-group-profile-collector/pom.xml index 81e517b..bea554e 100644 --- a/system/registry/system-groups/system-group-profile/system-group-profile-collector/pom.xml +++ b/system/registry/system-groups/system-group-profile/system-group-profile-collector/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.registry.system-groups.profile system-group-profile - 1.8.2.2 + 1.8.3 ../../system-group-profile/pom.xml diff --git a/system/registry/system-groups/system-group-profile/system-group-profile-collector/src/main/java/ru/entaxy/esb/system/groups/registry/system/groups/profile/collector/SystemGroupProfileNamedListener.java b/system/registry/system-groups/system-group-profile/system-group-profile-collector/src/main/java/ru/entaxy/esb/system/groups/registry/system/groups/profile/collector/SystemGroupProfileNamedListener.java index 2ce8498..cc38152 100644 --- a/system/registry/system-groups/system-group-profile/system-group-profile-collector/src/main/java/ru/entaxy/esb/system/groups/registry/system/groups/profile/collector/SystemGroupProfileNamedListener.java +++ b/system/registry/system-groups/system-group-profile/system-group-profile-collector/src/main/java/ru/entaxy/esb/system/groups/registry/system/groups/profile/collector/SystemGroupProfileNamedListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-group-profile-collector * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/system-group-profile/system-group-profile-collector/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/system/registry/system-groups/system-group-profile/system-group-profile-collector/src/main/resources/OSGI-INF/blueprint/blueprint.xml index c7886b6..57a260c 100644 --- a/system/registry/system-groups/system-group-profile/system-group-profile-collector/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/system/registry/system-groups/system-group-profile/system-group-profile-collector/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ system-group-profile-collector ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/system-group-profile/system-group-profile-impl-default/pom.xml b/system/registry/system-groups/system-group-profile/system-group-profile-impl-default/pom.xml index 559bdd3..4bc0262 100644 --- a/system/registry/system-groups/system-group-profile/system-group-profile-impl-default/pom.xml +++ b/system/registry/system-groups/system-group-profile/system-group-profile-impl-default/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.registry.system-groups.profile system-group-profile - 1.8.2.2 + 1.8.3 ../../system-group-profile/pom.xml diff --git a/system/registry/system-groups/system-group-profile/system-group-profile-impl-default/src/main/java/ru/entaxy/esb/system/groups/registry/system/groups/profile/impl/defaults/DefaultSystemGroupProfile.java b/system/registry/system-groups/system-group-profile/system-group-profile-impl-default/src/main/java/ru/entaxy/esb/system/groups/registry/system/groups/profile/impl/defaults/DefaultSystemGroupProfile.java index 0318505..c68f39e 100644 --- a/system/registry/system-groups/system-group-profile/system-group-profile-impl-default/src/main/java/ru/entaxy/esb/system/groups/registry/system/groups/profile/impl/defaults/DefaultSystemGroupProfile.java +++ b/system/registry/system-groups/system-group-profile/system-group-profile-impl-default/src/main/java/ru/entaxy/esb/system/groups/registry/system/groups/profile/impl/defaults/DefaultSystemGroupProfile.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-group-profile-impl-default * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/system-groups/system-group-profile/system-group-profile-impl-default/src/main/resources/log4j2.properties b/system/registry/system-groups/system-group-profile/system-group-profile-impl-default/src/main/resources/log4j2.properties index d49e7eb..126168d 100644 --- a/system/registry/system-groups/system-group-profile/system-group-profile-impl-default/src/main/resources/log4j2.properties +++ b/system/registry/system-groups/system-group-profile/system-group-profile-impl-default/src/main/resources/log4j2.properties @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # system-group-profile-impl-default # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/registry/systems/pom.xml b/system/registry/systems/pom.xml index e8ff0ac..d422882 100644 --- a/system/registry/systems/pom.xml +++ b/system/registry/systems/pom.xml @@ -1,13 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system.registry registry - 1.8.2.2 + 1.8.3 ../../registry/pom.xml diff --git a/system/registry/systems/system-api/pom.xml b/system/registry/systems/system-api/pom.xml index 04a4fbe..a044166 100644 --- a/system/registry/systems/system-api/pom.xml +++ b/system/registry/systems/system-api/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.registry.systems systems - 1.8.2.2 + 1.8.3 ../../systems/pom.xml diff --git a/system/registry/systems/system-api/src/main/java/ru/entaxy/esb/system/jpa/SystemService.java b/system/registry/systems/system-api/src/main/java/ru/entaxy/esb/system/jpa/SystemService.java index 60a8755..cc5cf66 100644 --- a/system/registry/systems/system-api/src/main/java/ru/entaxy/esb/system/jpa/SystemService.java +++ b/system/registry/systems/system-api/src/main/java/ru/entaxy/esb/system/jpa/SystemService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-api/src/main/java/ru/entaxy/esb/system/jpa/entity/ExportAllowed.java b/system/registry/systems/system-api/src/main/java/ru/entaxy/esb/system/jpa/entity/ExportAllowed.java index d754bff..de5b3d5 100644 --- a/system/registry/systems/system-api/src/main/java/ru/entaxy/esb/system/jpa/entity/ExportAllowed.java +++ b/system/registry/systems/system-api/src/main/java/ru/entaxy/esb/system/jpa/entity/ExportAllowed.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-api/src/main/java/ru/entaxy/esb/system/jpa/entity/System.java b/system/registry/systems/system-api/src/main/java/ru/entaxy/esb/system/jpa/entity/System.java index 3ed5e8b..0e9a295 100644 --- a/system/registry/systems/system-api/src/main/java/ru/entaxy/esb/system/jpa/entity/System.java +++ b/system/registry/systems/system-api/src/main/java/ru/entaxy/esb/system/jpa/entity/System.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-component/pom.xml b/system/registry/systems/system-component/pom.xml index 37578d7..51e3e77 100644 --- a/system/registry/systems/system-component/pom.xml +++ b/system/registry/systems/system-component/pom.xml @@ -1,14 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system.registry.systems systems - 1.8.2.2 + 1.8.3 ../../systems/pom.xml diff --git a/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/SystemComponent.java b/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/SystemComponent.java index 388bd3d..503b404 100644 --- a/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/SystemComponent.java +++ b/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/SystemComponent.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/SystemConsumer.java b/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/SystemConsumer.java index d4cd8f5..04ae4cf 100644 --- a/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/SystemConsumer.java +++ b/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/SystemConsumer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/SystemEndpoint.java b/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/SystemEndpoint.java index dcec752..5ff64c6 100644 --- a/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/SystemEndpoint.java +++ b/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/SystemEndpoint.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/SystemProducer.java b/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/SystemProducer.java index 01b6aa3..986f850 100644 --- a/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/SystemProducer.java +++ b/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/SystemProducer.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/util/SystemConstants.java b/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/util/SystemConstants.java index ad31000..035f7b5 100644 --- a/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/util/SystemConstants.java +++ b/system/registry/systems/system-component/src/main/java/ru/entaxy/esb/system/component/util/SystemConstants.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-component/src/main/resources/log4j2.properties b/system/registry/systems/system-component/src/main/resources/log4j2.properties index 7a3c3d8..fccd358 100644 --- a/system/registry/systems/system-component/src/main/resources/log4j2.properties +++ b/system/registry/systems/system-component/src/main/resources/log4j2.properties @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # system-component # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-component/src/test/java/ru/entaxy/esb/system/SystemComponentTest.java b/system/registry/systems/system-component/src/test/java/ru/entaxy/esb/system/SystemComponentTest.java index ebb04a9..77a8f84 100644 --- a/system/registry/systems/system-component/src/test/java/ru/entaxy/esb/system/SystemComponentTest.java +++ b/system/registry/systems/system-component/src/test/java/ru/entaxy/esb/system/SystemComponentTest.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-component * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-component/src/test/resources/log4j2.properties b/system/registry/systems/system-component/src/test/resources/log4j2.properties index e7135b3..000a0f9 100644 --- a/system/registry/systems/system-component/src/test/resources/log4j2.properties +++ b/system/registry/systems/system-component/src/test/resources/log4j2.properties @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # system-component # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-impl/pom.xml b/system/registry/systems/system-impl/pom.xml index 98a1801..1cd5ab8 100644 --- a/system/registry/systems/system-impl/pom.xml +++ b/system/registry/systems/system-impl/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.registry.systems systems - 1.8.2.2 + 1.8.3 ../../systems/pom.xml diff --git a/system/registry/systems/system-impl/src/main/java/ru/entaxy/esb/system/jpa/impl/SystemServiceImpl.java b/system/registry/systems/system-impl/src/main/java/ru/entaxy/esb/system/jpa/impl/SystemServiceImpl.java index 0107ca1..e4932df 100644 --- a/system/registry/systems/system-impl/src/main/java/ru/entaxy/esb/system/jpa/impl/SystemServiceImpl.java +++ b/system/registry/systems/system-impl/src/main/java/ru/entaxy/esb/system/jpa/impl/SystemServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-impl * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/system/registry/systems/system-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml index b0fe5cd..9494933 100644 --- a/system/registry/systems/system-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/system/registry/systems/system-impl/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ system-impl ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-impl/src/main/resources/hibernate.cfg.xml b/system/registry/systems/system-impl/src/main/resources/hibernate.cfg.xml index 8b64e21..2f6a845 100644 --- a/system/registry/systems/system-impl/src/main/resources/hibernate.cfg.xml +++ b/system/registry/systems/system-impl/src/main/resources/hibernate.cfg.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ system-impl ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-profile/pom.xml b/system/registry/systems/system-profile/pom.xml index b908b24..6115dca 100644 --- a/system/registry/systems/system-profile/pom.xml +++ b/system/registry/systems/system-profile/pom.xml @@ -1,13 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system.registry.systems systems - 1.8.2.2 + 1.8.3 ../../systems/pom.xml diff --git a/system/registry/systems/system-profile/system-profile-api/pom.xml b/system/registry/systems/system-profile/system-profile-api/pom.xml index bbf4726..8922282 100644 --- a/system/registry/systems/system-profile/system-profile-api/pom.xml +++ b/system/registry/systems/system-profile/system-profile-api/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.registry.systems.profile system-profile - 1.8.2.2 + 1.8.3 ../../system-profile/pom.xml diff --git a/system/registry/systems/system-profile/system-profile-api/src/main/java/ru/entaxy/esb/system/registry/systems/profile/SystemCollectorListener.java b/system/registry/systems/system-profile/system-profile-api/src/main/java/ru/entaxy/esb/system/registry/systems/profile/SystemCollectorListener.java index c49b907..3b87ccd 100644 --- a/system/registry/systems/system-profile/system-profile-api/src/main/java/ru/entaxy/esb/system/registry/systems/profile/SystemCollectorListener.java +++ b/system/registry/systems/system-profile/system-profile-api/src/main/java/ru/entaxy/esb/system/registry/systems/profile/SystemCollectorListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-profile-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-profile/system-profile-api/src/main/java/ru/entaxy/esb/system/registry/systems/profile/SystemProfile.java b/system/registry/systems/system-profile/system-profile-api/src/main/java/ru/entaxy/esb/system/registry/systems/profile/SystemProfile.java index 2ebe32d..4ec7f08 100644 --- a/system/registry/systems/system-profile/system-profile-api/src/main/java/ru/entaxy/esb/system/registry/systems/profile/SystemProfile.java +++ b/system/registry/systems/system-profile/system-profile-api/src/main/java/ru/entaxy/esb/system/registry/systems/profile/SystemProfile.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-profile-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-profile/system-profile-collector/pom.xml b/system/registry/systems/system-profile/system-profile-collector/pom.xml index 1a7cf40..894b70a 100644 --- a/system/registry/systems/system-profile/system-profile-collector/pom.xml +++ b/system/registry/systems/system-profile/system-profile-collector/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.registry.systems.profile system-profile - 1.8.2.2 + 1.8.3 ../../system-profile/pom.xml diff --git a/system/registry/systems/system-profile/system-profile-collector/src/main/java/ru/entaxy/esb/system/registry/systems/profile/collector/SystemProfileNamedListener.java b/system/registry/systems/system-profile/system-profile-collector/src/main/java/ru/entaxy/esb/system/registry/systems/profile/collector/SystemProfileNamedListener.java index c80065c..726de4e 100644 --- a/system/registry/systems/system-profile/system-profile-collector/src/main/java/ru/entaxy/esb/system/registry/systems/profile/collector/SystemProfileNamedListener.java +++ b/system/registry/systems/system-profile/system-profile-collector/src/main/java/ru/entaxy/esb/system/registry/systems/profile/collector/SystemProfileNamedListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-profile-collector * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-profile/system-profile-collector/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/system/registry/systems/system-profile/system-profile-collector/src/main/resources/OSGI-INF/blueprint/blueprint.xml index b7333e9..75f4ce3 100644 --- a/system/registry/systems/system-profile/system-profile-collector/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/system/registry/systems/system-profile/system-profile-collector/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ system-profile-collector ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/registry/systems/system-profile/system-profile-impl-default/pom.xml b/system/registry/systems/system-profile/system-profile-impl-default/pom.xml index e2d1fde..cfaa3e7 100644 --- a/system/registry/systems/system-profile/system-profile-impl-default/pom.xml +++ b/system/registry/systems/system-profile/system-profile-impl-default/pom.xml @@ -1,12 +1,10 @@ - + ru.entaxy.esb.system.registry.systems.profile system-profile - 1.8.2.2 + 1.8.3 ../../system-profile/pom.xml diff --git a/system/registry/systems/system-profile/system-profile-impl-default/src/main/java/ru/entaxy/esb/system/registry/systems/profile/impl/defaults/DefaultSystemProfile.java b/system/registry/systems/system-profile/system-profile-impl-default/src/main/java/ru/entaxy/esb/system/registry/systems/profile/impl/defaults/DefaultSystemProfile.java index 43164a3..3d968cf 100644 --- a/system/registry/systems/system-profile/system-profile-impl-default/src/main/java/ru/entaxy/esb/system/registry/systems/profile/impl/defaults/DefaultSystemProfile.java +++ b/system/registry/systems/system-profile/system-profile-impl-default/src/main/java/ru/entaxy/esb/system/registry/systems/profile/impl/defaults/DefaultSystemProfile.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-profile-impl-default * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/src/main/cfg/ru.entaxy.esb.cfg b/system/src/main/cfg/ru.entaxy.esb.cfg index babd4a2..cab9700 100644 --- a/system/src/main/cfg/ru.entaxy.esb.cfg +++ b/system/src/main/cfg/ru.entaxy.esb.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # karaf-features # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/src/main/cfg/ru.entaxy.esb.deployer.cellar.cfg b/system/src/main/cfg/ru.entaxy.esb.deployer.cellar.cfg index 01ba023..380cec4 100644 --- a/system/src/main/cfg/ru.entaxy.esb.deployer.cellar.cfg +++ b/system/src/main/cfg/ru.entaxy.esb.deployer.cellar.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # karaf-features # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/src/main/cfg/ru.entaxy.esb.deployer.file.system.cfg b/system/src/main/cfg/ru.entaxy.esb.deployer.file.system.cfg index 6e9da9c..26d871f 100644 --- a/system/src/main/cfg/ru.entaxy.esb.deployer.file.system.cfg +++ b/system/src/main/cfg/ru.entaxy.esb.deployer.file.system.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # karaf-features # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/src/main/cfg/ru.entaxy.esb.deployer.nexus.cfg b/system/src/main/cfg/ru.entaxy.esb.deployer.nexus.cfg index 8b6a5e7..9b842ae 100644 --- a/system/src/main/cfg/ru.entaxy.esb.deployer.nexus.cfg +++ b/system/src/main/cfg/ru.entaxy.esb.deployer.nexus.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # karaf-features # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/src/main/cfg/ru.entaxy.esb.error.cfg b/system/src/main/cfg/ru.entaxy.esb.error.cfg index 5bfc235..86b3f55 100644 --- a/system/src/main/cfg/ru.entaxy.esb.error.cfg +++ b/system/src/main/cfg/ru.entaxy.esb.error.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # karaf-features # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/src/main/cfg/ru.entaxy.esb.error.code.cfg b/system/src/main/cfg/ru.entaxy.esb.error.code.cfg index e673734..ae061ae 100644 --- a/system/src/main/cfg/ru.entaxy.esb.error.code.cfg +++ b/system/src/main/cfg/ru.entaxy.esb.error.code.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # karaf-features # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/src/main/cfg/ru.entaxy.esb.error.text.cfg b/system/src/main/cfg/ru.entaxy.esb.error.text.cfg index b807a38..071c17e 100644 --- a/system/src/main/cfg/ru.entaxy.esb.error.text.cfg +++ b/system/src/main/cfg/ru.entaxy.esb.error.text.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # karaf-features # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/src/main/cfg/ru.entaxy.esb.system.basic_auth.cfg b/system/src/main/cfg/ru.entaxy.esb.system.basic_auth.cfg index 7e2793b..1b3b3b0 100644 --- a/system/src/main/cfg/ru.entaxy.esb.system.basic_auth.cfg +++ b/system/src/main/cfg/ru.entaxy.esb.system.basic_auth.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # karaf-features # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/src/main/cfg/ru.entaxy.esb.system.basic_auth.htpasswd.cfg b/system/src/main/cfg/ru.entaxy.esb.system.basic_auth.htpasswd.cfg index 3182be7..5a05340 100644 --- a/system/src/main/cfg/ru.entaxy.esb.system.basic_auth.htpasswd.cfg +++ b/system/src/main/cfg/ru.entaxy.esb.system.basic_auth.htpasswd.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # karaf-features # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/src/main/cfg/ru.entaxy.esb.system.event.handler.cfg b/system/src/main/cfg/ru.entaxy.esb.system.event.handler.cfg index cff5775..80242e6 100644 --- a/system/src/main/cfg/ru.entaxy.esb.system.event.handler.cfg +++ b/system/src/main/cfg/ru.entaxy.esb.system.event.handler.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # karaf-features # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/src/main/cfg/ru.entaxy.esb.system.event.rest.cfg b/system/src/main/cfg/ru.entaxy.esb.system.event.rest.cfg index 7b6ba9b..949b1e8 100644 --- a/system/src/main/cfg/ru.entaxy.esb.system.event.rest.cfg +++ b/system/src/main/cfg/ru.entaxy.esb.system.event.rest.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # karaf-features # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/src/main/cfg/ru.entaxy.esb.system.management.cfg b/system/src/main/cfg/ru.entaxy.esb.system.management.cfg index e239830..8fc3616 100644 --- a/system/src/main/cfg/ru.entaxy.esb.system.management.cfg +++ b/system/src/main/cfg/ru.entaxy.esb.system.management.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # karaf-features # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/src/main/features/features.xml b/system/src/main/features/features.xml index fb23ace..ae405ca 100644 --- a/system/src/main/features/features.xml +++ b/system/src/main/features/features.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ platform ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -41,15 +41,15 @@ mvn:ru.entaxy.esb.platform.runtime/core/${project.version}/xml/features - entaxy-legacy-bridge-profiles - entaxy-legacy-permissions + entaxy-legacy-bridge-profiles + entaxy-legacy-permissions mvn:ru.entaxy.esb.system.management.profile.manager/profile-manager/${project.version} mvn:ru.entaxy.esb.system.management.route.manager/route-manager/${project.version} - entaxy-legacy-management-connectors + entaxy-legacy-management-connectors mvn:ru.entaxy.esb.system.management.bridge.profile.manager/bridge-profile-manager/${project.version} osgi.service;effective:=active;objectClass=org.apache.camel.Component;connection.name=entaxy-broker @@ -63,71 +63,17 @@ entaxy-platform-base - entaxy-artifact-management - entaxy-blueprint-generator - entaxy-legacy-profile-commons - entaxy-legacy-connectors + entaxy-artifact-management + entaxy-blueprint-generator + entaxy-legacy-profile-commons + entaxy-legacy-connectors mvn:ru.entaxy.esb.system.management.bundle.manager/bundle-manager/${project.version} mvn:ru.entaxy.esb.system.management.connector.manager/connector-manager/${project.version} - - entaxy-karaf-basic - entaxy-karaf-runtime - entaxy-legacy-system - - - - - - - - - - - - entaxy-karaf-basic - entaxy-karaf-runtime - entaxy-legacy-esb-config - - mvn:ru.entaxy.esb.system/system-parent/${project.version}/cfg/org.apache.felix.hc.generalchecks.BundlesStartedCheck-system - - mvn:ru.entaxy.esb.system.commons/system-commons/${project.version} - mvn:ru.entaxy.esb.system.core/template/${project.version} - - - - - mvn:ru.entaxy.esb.system/system-parent/${project.version}/cfg/ru.entaxy.esb - - - - - - entaxy-legacy-connector-api - entaxy-datasources-initializer + entaxy-legacy-connector-api + entaxy-datasources-initializer mvn:ru.entaxy.esb.system.registry.systems/system-api/${project.version} mvn:ru.entaxy.esb.system.registry.systems/system-impl/${project.version} @@ -206,9 +152,9 @@ - entaxy-legacy-system-api - entaxy-legacy-permissions-api - entaxy-legacy-permissions-pre-basic-auth + entaxy-legacy-system-api + entaxy-legacy-permissions-api + entaxy-legacy-permissions-pre-basic-auth mvn:ru.entaxy.esb.system/system-parent/${project.version}/cfg/ru.entaxy.esb.system.basic_auth @@ -224,15 +170,15 @@ - entaxy-legacy-system-api - entaxy-datasources-initializer - entaxy-storage-initializer + entaxy-legacy-system-api + entaxy-datasources-initializer + entaxy-storage-initializer mvn:ru.entaxy.esb.system.auth.basic.impl/basic-auth-impl/${project.version} mvn:ru.entaxy.esb.system.auth.basic.htpasswd/htpasswd/${project.version} - enatxy-legacy-basic-auth-impl + enatxy-legacy-basic-auth-impl mvn:ru.entaxy.esb.system.auth.basic/basic-auth-soap/${project.version} @@ -276,7 +222,7 @@ - entaxy-legacy-system + entaxy-legacy-system mvn:ru.entaxy.esb.system.core.dispatcher/dispatcher/${project.version} mvn:org.freemarker/freemarker/${freemarker.version} @@ -287,12 +233,12 @@ - entaxy-legacy-bundle-service + entaxy-legacy-bundle-service mvn:ru.entaxy.esb.system.registry.connector/connector-api/${project.version} - entaxy-legacy-connector-api + entaxy-legacy-connector-api mvn:ru.entaxy.esb.system.registry.connector/connector-impl/${project.version} @@ -327,7 +273,7 @@ - entaxy-legacy-permissions-api + entaxy-legacy-permissions-api mvn:ru.entaxy.esb.system.core.permission/permission-handler/${project.version} mvn:ru.entaxy.esb.system.core.permission/permission-component/${project.version} @@ -336,9 +282,9 @@ - entaxy-legacy-permissions-api + entaxy-legacy-permissions-api - entaxy-legacy-permissions-pre-basic-auth + entaxy-legacy-permissions-pre-basic-auth entaxy-legacy-basic-auth @@ -347,4 +293,4 @@ - \ No newline at end of file + diff --git a/system/src/main/healthcheck/generated/fragments.xml b/system/src/main/healthcheck/generated/fragments.xml index 9dcbdea..98d9a22 100644 --- a/system/src/main/healthcheck/generated/fragments.xml +++ b/system/src/main/healthcheck/generated/fragments.xml @@ -1,5 +1,5 @@ - - mvn:ru.entaxy.esb.system/system-parent/1.8.2.2/cfg/org.apache.felix.hc.generalchecks.BundlesStartedCheck-system + + mvn:ru.entaxy.esb.system/system-parent/1.8.3/cfg/org.apache.felix.hc.generalchecks.BundlesStartedCheck-system \ No newline at end of file diff --git a/system/src/main/healthcheck/org.apache.felix.hc.generalchecks.BundlesStartedCheck-system.cfg b/system/src/main/healthcheck/org.apache.felix.hc.generalchecks.BundlesStartedCheck-system.cfg index 3785458..c7a95f8 100644 --- a/system/src/main/healthcheck/org.apache.felix.hc.generalchecks.BundlesStartedCheck-system.cfg +++ b/system/src/main/healthcheck/org.apache.felix.hc.generalchecks.BundlesStartedCheck-system.cfg @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # system-parent # ========== -# Copyright (C) 2020 - 2022 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system/system-management/bridge-profile-manager/pom.xml b/system/system-management/bridge-profile-manager/pom.xml index 68199af..a3a5c5c 100644 --- a/system/system-management/bridge-profile-manager/pom.xml +++ b/system/system-management/bridge-profile-manager/pom.xml @@ -1,13 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system management - 1.8.2.2 + 1.8.3 ../pom.xml diff --git a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/BridgeProfileManager.java b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/BridgeProfileManager.java index e7b2354..98723c3 100644 --- a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/BridgeProfileManager.java +++ b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/BridgeProfileManager.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bridge-profile-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/BridgeProfileManagerImpl.java b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/BridgeProfileManagerImpl.java index 1dfc57a..5c8a3b0 100644 --- a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/BridgeProfileManagerImpl.java +++ b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/BridgeProfileManagerImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bridge-profile-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/dto/BridgeProfileDto.java b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/dto/BridgeProfileDto.java index 440ac2a..b5186ff 100644 --- a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/dto/BridgeProfileDto.java +++ b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/dto/BridgeProfileDto.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bridge-profile-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/mapper/BridgeProfileMapper.java b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/mapper/BridgeProfileMapper.java index 3aebcbd..cebfe5a 100644 --- a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/mapper/BridgeProfileMapper.java +++ b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/mapper/BridgeProfileMapper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bridge-profile-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/recipient/BridgeProfileRecipientManager.java b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/recipient/BridgeProfileRecipientManager.java index 9fafc69..90aed49 100644 --- a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/recipient/BridgeProfileRecipientManager.java +++ b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/recipient/BridgeProfileRecipientManager.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bridge-profile-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/recipient/BridgeProfileRecipientManagerImpl.java b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/recipient/BridgeProfileRecipientManagerImpl.java index 3e32fda..43f802f 100644 --- a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/recipient/BridgeProfileRecipientManagerImpl.java +++ b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/recipient/BridgeProfileRecipientManagerImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bridge-profile-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/sender/BridgeProfileSender.java b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/sender/BridgeProfileSender.java index 2bc355a..e86d0b4 100644 --- a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/sender/BridgeProfileSender.java +++ b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/sender/BridgeProfileSender.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bridge-profile-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/sender/BridgeProfileSenderImpl.java b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/sender/BridgeProfileSenderImpl.java index 396d541..9875914 100644 --- a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/sender/BridgeProfileSenderImpl.java +++ b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/sender/BridgeProfileSenderImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bridge-profile-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/sender/BridgeProfileType.java b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/sender/BridgeProfileType.java index cd331db..5fc7371 100644 --- a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/sender/BridgeProfileType.java +++ b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/sender/BridgeProfileType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bridge-profile-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/service/BridgeService.java b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/service/BridgeService.java index 6fd5dd2..896dbb4 100644 --- a/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/service/BridgeService.java +++ b/system/system-management/bridge-profile-manager/src/main/java/ru/entaxy/esb/system/management/bridge/profile/manager/service/BridgeService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bridge-profile-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bridge-profile-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml b/system/system-management/bridge-profile-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml index 452b978..86611ba 100644 --- a/system/system-management/bridge-profile-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml +++ b/system/system-management/bridge-profile-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ bridge-profile-manager ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/system-management/bundle-manager/pom.xml b/system/system-management/bundle-manager/pom.xml index 2b03ac8..54d825b 100644 --- a/system/system-management/bundle-manager/pom.xml +++ b/system/system-management/bundle-manager/pom.xml @@ -1,13 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system management - 1.8.2.2 + 1.8.3 ../pom.xml diff --git a/system/system-management/bundle-manager/src/main/java/ru/entaxy/esb/system/management/bundle/manager/BundleManager.java b/system/system-management/bundle-manager/src/main/java/ru/entaxy/esb/system/management/bundle/manager/BundleManager.java index 42a1f1a..cc31374 100644 --- a/system/system-management/bundle-manager/src/main/java/ru/entaxy/esb/system/management/bundle/manager/BundleManager.java +++ b/system/system-management/bundle-manager/src/main/java/ru/entaxy/esb/system/management/bundle/manager/BundleManager.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bundle-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bundle-manager/src/main/java/ru/entaxy/esb/system/management/bundle/manager/BundleManagerImpl.java b/system/system-management/bundle-manager/src/main/java/ru/entaxy/esb/system/management/bundle/manager/BundleManagerImpl.java index c240557..ad64166 100644 --- a/system/system-management/bundle-manager/src/main/java/ru/entaxy/esb/system/management/bundle/manager/BundleManagerImpl.java +++ b/system/system-management/bundle-manager/src/main/java/ru/entaxy/esb/system/management/bundle/manager/BundleManagerImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bundle-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bundle-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml b/system/system-management/bundle-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml index 54931be..c96282c 100644 --- a/system/system-management/bundle-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml +++ b/system/system-management/bundle-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ bundle-manager ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/system-management/bundle-service/pom.xml b/system/system-management/bundle-service/pom.xml index 263b847..d6afccf 100644 --- a/system/system-management/bundle-service/pom.xml +++ b/system/system-management/bundle-service/pom.xml @@ -1,11 +1,9 @@ - + management ru.entaxy.esb.system - 1.8.2.2 + 1.8.3 ../pom.xml 4.0.0 diff --git a/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/BundleService.java b/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/BundleService.java index e4a1cc2..7de4692 100644 --- a/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/BundleService.java +++ b/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/BundleService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bundle-service * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/BundleServiceImpl.java b/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/BundleServiceImpl.java index 1fcf55e..11d5214 100644 --- a/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/BundleServiceImpl.java +++ b/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/BundleServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bundle-service * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/dto/BundleDto.java b/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/dto/BundleDto.java index 1610aea..6bad512 100644 --- a/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/dto/BundleDto.java +++ b/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/dto/BundleDto.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bundle-service * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/dto/BundleStatus.java b/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/dto/BundleStatus.java index fcedb25..2f0b1d3 100644 --- a/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/dto/BundleStatus.java +++ b/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/dto/BundleStatus.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bundle-service * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/entity/BundleEntity.java b/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/entity/BundleEntity.java index a20dc31..be30606 100644 --- a/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/entity/BundleEntity.java +++ b/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/entity/BundleEntity.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bundle-service * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/entity/BundleType.java b/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/entity/BundleType.java index d09a3d0..dfd18c4 100644 --- a/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/entity/BundleType.java +++ b/system/system-management/bundle-service/src/main/java/ru/entaxy/esb/system/management/bundle/jpa/entity/BundleType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * bundle-service * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/bundle-service/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/system/system-management/bundle-service/src/main/resources/OSGI-INF/blueprint/blueprint.xml index 72016f7..ae003f3 100644 --- a/system/system-management/bundle-service/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/system/system-management/bundle-service/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ bundle-service ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/system-management/bundle-service/src/main/resources/hibernate.cfg.xml b/system/system-management/bundle-service/src/main/resources/hibernate.cfg.xml index e052302..a09cca9 100644 --- a/system/system-management/bundle-service/src/main/resources/hibernate.cfg.xml +++ b/system/system-management/bundle-service/src/main/resources/hibernate.cfg.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ bundle-service ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/system-management/connector-manager/pom.xml b/system/system-management/connector-manager/pom.xml index 653e0ee..72c8558 100644 --- a/system/system-management/connector-manager/pom.xml +++ b/system/system-management/connector-manager/pom.xml @@ -1,13 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system management - 1.8.2.2 + 1.8.3 ../pom.xml diff --git a/system/system-management/connector-manager/src/main/java/ru/entaxy/esb/system/management/connector/manager/ConnectorManager.java b/system/system-management/connector-manager/src/main/java/ru/entaxy/esb/system/management/connector/manager/ConnectorManager.java index 5cb2c0d..2c835b6 100644 --- a/system/system-management/connector-manager/src/main/java/ru/entaxy/esb/system/management/connector/manager/ConnectorManager.java +++ b/system/system-management/connector-manager/src/main/java/ru/entaxy/esb/system/management/connector/manager/ConnectorManager.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connector-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/connector-manager/src/main/java/ru/entaxy/esb/system/management/connector/manager/ConnectorManagerImpl.java b/system/system-management/connector-manager/src/main/java/ru/entaxy/esb/system/management/connector/manager/ConnectorManagerImpl.java index ca620e0..d87d6b2 100644 --- a/system/system-management/connector-manager/src/main/java/ru/entaxy/esb/system/management/connector/manager/ConnectorManagerImpl.java +++ b/system/system-management/connector-manager/src/main/java/ru/entaxy/esb/system/management/connector/manager/ConnectorManagerImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connector-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/connector-manager/src/main/java/ru/entaxy/esb/system/management/connector/manager/dto/ConnectorDto.java b/system/system-management/connector-manager/src/main/java/ru/entaxy/esb/system/management/connector/manager/dto/ConnectorDto.java index 3f6cd8d..3f3ae2c 100644 --- a/system/system-management/connector-manager/src/main/java/ru/entaxy/esb/system/management/connector/manager/dto/ConnectorDto.java +++ b/system/system-management/connector-manager/src/main/java/ru/entaxy/esb/system/management/connector/manager/dto/ConnectorDto.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connector-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/connector-manager/src/main/java/ru/entaxy/esb/system/management/connector/manager/mapper/ConnectorMapper.java b/system/system-management/connector-manager/src/main/java/ru/entaxy/esb/system/management/connector/manager/mapper/ConnectorMapper.java index 1c18a66..ca8c813 100644 --- a/system/system-management/connector-manager/src/main/java/ru/entaxy/esb/system/management/connector/manager/mapper/ConnectorMapper.java +++ b/system/system-management/connector-manager/src/main/java/ru/entaxy/esb/system/management/connector/manager/mapper/ConnectorMapper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * connector-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/connector-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml b/system/system-management/connector-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml index 8e8944b..8469ef9 100644 --- a/system/system-management/connector-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml +++ b/system/system-management/connector-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ connector-manager ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/system-management/file-upload/pom.xml b/system/system-management/file-upload/pom.xml index 731789f..82479fb 100644 --- a/system/system-management/file-upload/pom.xml +++ b/system/system-management/file-upload/pom.xml @@ -1,12 +1,11 @@ - + 4.0.0 ru.entaxy.esb.system management - 1.8.2.2 + 1.8.3 ../pom.xml diff --git a/system/system-management/file-upload/src/main/java/ru/entaxy/esb/system/management/file/upload/FileUploadProcessor.java b/system/system-management/file-upload/src/main/java/ru/entaxy/esb/system/management/file/upload/FileUploadProcessor.java index 4482daf..9ac8d08 100644 --- a/system/system-management/file-upload/src/main/java/ru/entaxy/esb/system/management/file/upload/FileUploadProcessor.java +++ b/system/system-management/file-upload/src/main/java/ru/entaxy/esb/system/management/file/upload/FileUploadProcessor.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * file-upload * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/file-upload/src/main/java/ru/entaxy/esb/system/management/file/upload/FileUploadService.java b/system/system-management/file-upload/src/main/java/ru/entaxy/esb/system/management/file/upload/FileUploadService.java index a10afe4..28c0318 100644 --- a/system/system-management/file-upload/src/main/java/ru/entaxy/esb/system/management/file/upload/FileUploadService.java +++ b/system/system-management/file-upload/src/main/java/ru/entaxy/esb/system/management/file/upload/FileUploadService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * file-upload * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/file-upload/src/main/java/ru/entaxy/esb/system/management/file/upload/FileUploadServiceImpl.java b/system/system-management/file-upload/src/main/java/ru/entaxy/esb/system/management/file/upload/FileUploadServiceImpl.java index e1fa0d8..a27bd55 100644 --- a/system/system-management/file-upload/src/main/java/ru/entaxy/esb/system/management/file/upload/FileUploadServiceImpl.java +++ b/system/system-management/file-upload/src/main/java/ru/entaxy/esb/system/management/file/upload/FileUploadServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * file-upload * ========== - * Copyright (C) 2020 - 2022 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/file-upload/src/main/resources/OSGI-INF/blueprint/camel-context.xml b/system/system-management/file-upload/src/main/resources/OSGI-INF/blueprint/camel-context.xml index 8428efa..d725a24 100644 --- a/system/system-management/file-upload/src/main/resources/OSGI-INF/blueprint/camel-context.xml +++ b/system/system-management/file-upload/src/main/resources/OSGI-INF/blueprint/camel-context.xml @@ -3,14 +3,12 @@ ~~~~~~licensing~~~~~~ events-rest ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - http://www.apache.org/licenses/LICENSE-2.0 - Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. diff --git a/system/system-management/permission-manager/pom.xml b/system/system-management/permission-manager/pom.xml index 5098b5b..8caa06d 100644 --- a/system/system-management/permission-manager/pom.xml +++ b/system/system-management/permission-manager/pom.xml @@ -1,11 +1,9 @@ - + ru.entaxy.esb.system management - 1.8.2.2 + 1.8.3 ../pom.xml 4.0.0 diff --git a/system/system-management/permission-manager/src/main/java/ru/entaxy/esb/system/management/permission/manager/PermissionManager.java b/system/system-management/permission-manager/src/main/java/ru/entaxy/esb/system/management/permission/manager/PermissionManager.java index 0d294e0..70c73df 100644 --- a/system/system-management/permission-manager/src/main/java/ru/entaxy/esb/system/management/permission/manager/PermissionManager.java +++ b/system/system-management/permission-manager/src/main/java/ru/entaxy/esb/system/management/permission/manager/PermissionManager.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/permission-manager/src/main/java/ru/entaxy/esb/system/management/permission/manager/PermissionManagerImpl.java b/system/system-management/permission-manager/src/main/java/ru/entaxy/esb/system/management/permission/manager/PermissionManagerImpl.java index 28b0672..c253ad0 100644 --- a/system/system-management/permission-manager/src/main/java/ru/entaxy/esb/system/management/permission/manager/PermissionManagerImpl.java +++ b/system/system-management/permission-manager/src/main/java/ru/entaxy/esb/system/management/permission/manager/PermissionManagerImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/permission-manager/src/main/java/ru/entaxy/esb/system/management/permission/manager/dto/PermissionDto.java b/system/system-management/permission-manager/src/main/java/ru/entaxy/esb/system/management/permission/manager/dto/PermissionDto.java index 38b8a71..724b628 100644 --- a/system/system-management/permission-manager/src/main/java/ru/entaxy/esb/system/management/permission/manager/dto/PermissionDto.java +++ b/system/system-management/permission-manager/src/main/java/ru/entaxy/esb/system/management/permission/manager/dto/PermissionDto.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/permission-manager/src/main/java/ru/entaxy/esb/system/management/permission/manager/mapper/PermissionMapper.java b/system/system-management/permission-manager/src/main/java/ru/entaxy/esb/system/management/permission/manager/mapper/PermissionMapper.java index 76e3b14..14ba762 100644 --- a/system/system-management/permission-manager/src/main/java/ru/entaxy/esb/system/management/permission/manager/mapper/PermissionMapper.java +++ b/system/system-management/permission-manager/src/main/java/ru/entaxy/esb/system/management/permission/manager/mapper/PermissionMapper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * permission-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/permission-manager/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/system/system-management/permission-manager/src/main/resources/OSGI-INF/blueprint/blueprint.xml index 4f2590b..b78997d 100644 --- a/system/system-management/permission-manager/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ b/system/system-management/permission-manager/src/main/resources/OSGI-INF/blueprint/blueprint.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ permission-manager ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/system-management/pom.xml b/system/system-management/pom.xml index 17191ca..31d6aed 100644 --- a/system/system-management/pom.xml +++ b/system/system-management/pom.xml @@ -1,11 +1,9 @@ - + system-parent ru.entaxy.esb.system - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/system/system-management/profile-manager/pom.xml b/system/system-management/profile-manager/pom.xml index a93d01a..84d1bb1 100644 --- a/system/system-management/profile-manager/pom.xml +++ b/system/system-management/profile-manager/pom.xml @@ -1,13 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system management - 1.8.2.2 + 1.8.3 ../pom.xml diff --git a/system/system-management/profile-manager/src/main/java/ru/entaxy/esb/system/management/profile/manager/ProfileManager.java b/system/system-management/profile-manager/src/main/java/ru/entaxy/esb/system/management/profile/manager/ProfileManager.java index 5be4ef8..82a5160 100644 --- a/system/system-management/profile-manager/src/main/java/ru/entaxy/esb/system/management/profile/manager/ProfileManager.java +++ b/system/system-management/profile-manager/src/main/java/ru/entaxy/esb/system/management/profile/manager/ProfileManager.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/profile-manager/src/main/java/ru/entaxy/esb/system/management/profile/manager/ProfileManagerImpl.java b/system/system-management/profile-manager/src/main/java/ru/entaxy/esb/system/management/profile/manager/ProfileManagerImpl.java index 63a8704..665a08c 100644 --- a/system/system-management/profile-manager/src/main/java/ru/entaxy/esb/system/management/profile/manager/ProfileManagerImpl.java +++ b/system/system-management/profile-manager/src/main/java/ru/entaxy/esb/system/management/profile/manager/ProfileManagerImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -178,6 +178,7 @@ public class ProfileManagerImpl implements ProfileManager { } permissionManager.removeAllPermission(system.getId()); routeManager.uninstallDefaultRoute(system.getName()); + routeManager.uninstallDefaultRoute(system.getName() + "-default-route"); // fixme temporary solution } public void setProfileMapper(ProfileMapper profileMapper) { diff --git a/system/system-management/profile-manager/src/main/java/ru/entaxy/esb/system/management/profile/manager/dto/ProfileDto.java b/system/system-management/profile-manager/src/main/java/ru/entaxy/esb/system/management/profile/manager/dto/ProfileDto.java index f7bb3d3..818bba3 100644 --- a/system/system-management/profile-manager/src/main/java/ru/entaxy/esb/system/management/profile/manager/dto/ProfileDto.java +++ b/system/system-management/profile-manager/src/main/java/ru/entaxy/esb/system/management/profile/manager/dto/ProfileDto.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/profile-manager/src/main/java/ru/entaxy/esb/system/management/profile/manager/mapper/ProfileMapper.java b/system/system-management/profile-manager/src/main/java/ru/entaxy/esb/system/management/profile/manager/mapper/ProfileMapper.java index ec114bb..c67e973 100644 --- a/system/system-management/profile-manager/src/main/java/ru/entaxy/esb/system/management/profile/manager/mapper/ProfileMapper.java +++ b/system/system-management/profile-manager/src/main/java/ru/entaxy/esb/system/management/profile/manager/mapper/ProfileMapper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * profile-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/profile-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml b/system/system-management/profile-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml index 10189a9..888869b 100644 --- a/system/system-management/profile-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml +++ b/system/system-management/profile-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ profile-manager ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/system-management/route-manager/pom.xml b/system/system-management/route-manager/pom.xml index 9be5404..655ca24 100644 --- a/system/system-management/route-manager/pom.xml +++ b/system/system-management/route-manager/pom.xml @@ -1,11 +1,9 @@ - + management ru.entaxy.esb.system - 1.8.2.2 + 1.8.3 4.0.0 diff --git a/system/system-management/route-manager/src/main/java/ru/entaxy/esb/system/management/route/manager/RouteManager.java b/system/system-management/route-manager/src/main/java/ru/entaxy/esb/system/management/route/manager/RouteManager.java index 5bb0471..80fc5ec 100644 --- a/system/system-management/route-manager/src/main/java/ru/entaxy/esb/system/management/route/manager/RouteManager.java +++ b/system/system-management/route-manager/src/main/java/ru/entaxy/esb/system/management/route/manager/RouteManager.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * route-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/route-manager/src/main/java/ru/entaxy/esb/system/management/route/manager/RouteManagerImpl.java b/system/system-management/route-manager/src/main/java/ru/entaxy/esb/system/management/route/manager/RouteManagerImpl.java index 193f0c3..f096c96 100644 --- a/system/system-management/route-manager/src/main/java/ru/entaxy/esb/system/management/route/manager/RouteManagerImpl.java +++ b/system/system-management/route-manager/src/main/java/ru/entaxy/esb/system/management/route/manager/RouteManagerImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * route-manager * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/route-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml b/system/system-management/route-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml index c9c621f..73c39e6 100644 --- a/system/system-management/route-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml +++ b/system/system-management/route-manager/src/main/resources/OSGI-INF/blueprint/camel-context.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ route-manager ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/pom.xml b/system/system-management/system-management-api/pom.xml index 2203c06..d6beb0e 100644 --- a/system/system-management/system-management-api/pom.xml +++ b/system/system-management/system-management-api/pom.xml @@ -1,13 +1,12 @@ - + 4.0.0 ru.entaxy.esb.system management - 1.8.2.2 + 1.8.3 ../pom.xml diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/SystemManagementServiceImpl.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/SystemManagementServiceImpl.java index a14a10b..a83c952 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/SystemManagementServiceImpl.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/SystemManagementServiceImpl.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/mapper/Mapper.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/mapper/Mapper.java index 812bed4..af5a819 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/mapper/Mapper.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/mapper/Mapper.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/BridgeProfileType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/BridgeProfileType.java index 750b554..8f28354 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/BridgeProfileType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/BridgeProfileType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ConnectorType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ConnectorType.java index f2a2841..1a8df97 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ConnectorType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ConnectorType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/CreateConnectorType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/CreateConnectorType.java index 6fe8e4a..dab782d 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/CreateConnectorType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/CreateConnectorType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/CreateProfileType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/CreateProfileType.java index f5a2898..2527372 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/CreateProfileType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/CreateProfileType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ExportAllowedType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ExportAllowedType.java index 5610456..d2a182f 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ExportAllowedType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ExportAllowedType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/FullBridgeProfileType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/FullBridgeProfileType.java index e02f4f3..b5a04ab 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/FullBridgeProfileType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/FullBridgeProfileType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/FullProfileType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/FullProfileType.java index 2dc059c..121d4ad 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/FullProfileType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/FullProfileType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/GetBridgeProfilesRequest.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/GetBridgeProfilesRequest.java index c994bd4..c8d7dfe 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/GetBridgeProfilesRequest.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/GetBridgeProfilesRequest.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/GetConnectorType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/GetConnectorType.java index 3b24c1e..28f55c4 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/GetConnectorType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/GetConnectorType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/GetTemplate.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/GetTemplate.java index 7c121e9..a3d29fe 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/GetTemplate.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/GetTemplate.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListBridgeProfileType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListBridgeProfileType.java index afd952d..69e0c14 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListBridgeProfileType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListBridgeProfileType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListConnectorRequest.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListConnectorRequest.java index 3e98654..ce5ad81 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListConnectorRequest.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListConnectorRequest.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListConnectorType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListConnectorType.java index 2111b92..5ddfd07 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListConnectorType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListConnectorType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListEsbRequest.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListEsbRequest.java index 168e2c9..7fb22ba 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListEsbRequest.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListEsbRequest.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListEsbType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListEsbType.java index 44dff47..97a6bec 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListEsbType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListEsbType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListFullProfileType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListFullProfileType.java index a8904d3..e48a4c0 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListFullProfileType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListFullProfileType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListProfileRequest.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListProfileRequest.java index 60b1948..144a5ec 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListProfileRequest.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListProfileRequest.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListProfileType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListProfileType.java index 3c837ed..178db73 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListProfileType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListProfileType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListTemplateRequest.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListTemplateRequest.java index d2d3756..8c7c8f2 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListTemplateRequest.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListTemplateRequest.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListTemplateType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListTemplateType.java index 6e17aaa..45d2660 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListTemplateType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ListTemplateType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ObjectFactory.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ObjectFactory.java index 45a4362..9d38079 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ObjectFactory.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ObjectFactory.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ParamListType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ParamListType.java index 8df52de..6be12d9 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ParamListType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ParamListType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ParamType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ParamType.java index e9266de..781c869 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ParamType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ParamType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/PermissionForObjectType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/PermissionForObjectType.java index 8bd8331..074d4e7 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/PermissionForObjectType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/PermissionForObjectType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/PermissionForSubjectType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/PermissionForSubjectType.java index f4a7941..d69ec83 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/PermissionForSubjectType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/PermissionForSubjectType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/PermissionType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/PermissionType.java index 0075fec..1f9583a 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/PermissionType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/PermissionType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ProfileType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ProfileType.java index 96ec0fe..406b6ff 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ProfileType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/ProfileType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/SystemManagementService.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/SystemManagementService.java index efb3f69..46c103f 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/SystemManagementService.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/SystemManagementService.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/SystemManagementService_Service.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/SystemManagementService_Service.java index 10f2cd3..989d6e7 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/SystemManagementService_Service.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/SystemManagementService_Service.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/TemplateType.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/TemplateType.java index 0c750c5..bf101dd 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/TemplateType.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/TemplateType.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/package-info.java b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/package-info.java index aae7da4..b3d608e 100644 --- a/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/package-info.java +++ b/system/system-management/system-management-api/src/main/java/ru/entaxy/esb/system/management/soap/package-info.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * system-management-api * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/resources/OSGI-INF/blueprint/camel-context.xml b/system/system-management/system-management-api/src/main/resources/OSGI-INF/blueprint/camel-context.xml index a0def39..32c4c69 100644 --- a/system/system-management/system-management-api/src/main/resources/OSGI-INF/blueprint/camel-context.xml +++ b/system/system-management/system-management-api/src/main/resources/OSGI-INF/blueprint/camel-context.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ system-management-api ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/system/system-management/system-management-api/src/main/resources/log4j2.properties b/system/system-management/system-management-api/src/main/resources/log4j2.properties index 440d0b7..d1806f0 100644 --- a/system/system-management/system-management-api/src/main/resources/log4j2.properties +++ b/system/system-management/system-management-api/src/main/resources/log4j2.properties @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # system-management-api # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/pom.xml b/ui/entaxy-hawtio/artemis-plugin-entaxy/pom.xml index 1e499d0..7b61079 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/pom.xml +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.ui entaxy-hawtio - 1.8.2.2 + 1.8.3 ru.entaxy.esb.ui.hawtio artemis-plugin-entaxy diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/java/org/apache/activemq/hawtio/plugin/PluginContextListener.java b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/java/org/apache/activemq/hawtio/plugin/PluginContextListener.java index be5f070..94270db 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/java/org/apache/activemq/hawtio/plugin/PluginContextListener.java +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/java/org/apache/activemq/hawtio/plugin/PluginContextListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/resources/WEB-INF/web.xml b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/resources/WEB-INF/web.xml index c9c6c16..bd0f410 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/resources/WEB-INF/web.xml +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/resources/WEB-INF/web.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ artemis-plugin-entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/resources/log4j.properties b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/resources/log4j.properties index 9073c8a..eae5543 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/resources/log4j.properties +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/resources/log4j.properties @@ -2,7 +2,7 @@ # ~~~~~~licensing~~~~~~ # artemis-plugin-entaxy # ========== -# Copyright (C) 2020 - 2021 EmDev LLC +# Copyright (C) 2020 - 2023 EmDev LLC # ========== # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/index.html b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/index.html index 341d2ba..145fcd0 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/index.html +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/index.html @@ -20,7 +20,7 @@ ~~~~~~licensing~~~~~~ artemis-plugin-entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/html/preferences.html b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/html/preferences.html index d248d27..0edb3ed 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/html/preferences.html +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/html/preferences.html @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ artemis-plugin-entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/html/tree/content.html b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/html/tree/content.html index 81d60aa..b86e06b 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/html/tree/content.html +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/html/tree/content.html @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ artemis-plugin-entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/html/tree/header.html b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/html/tree/header.html index c247ccf..f445465 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/html/tree/header.html +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/html/tree/header.html @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ artemis-plugin-entaxy ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/artemisHelpers.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/artemisHelpers.js index 0ed9d1f..3e07fa2 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/artemisHelpers.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/artemisHelpers.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/artemisPlugin.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/artemisPlugin.js index eee07b5..01ec51e 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/artemisPlugin.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/artemisPlugin.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/addressSendMessage.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/addressSendMessage.js index b8289a6..2c0d0ab 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/addressSendMessage.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/addressSendMessage.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/addresses.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/addresses.js index 218696c..c50afbd 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/addresses.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/addresses.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/browse.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/browse.js index 79ab265..3ddc6d4 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/browse.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/browse.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/connections.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/connections.js index 4b34082..48845f9 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/connections.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/connections.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/consumers.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/consumers.js index 54902ec..c953a8e 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/consumers.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/consumers.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/createAddress.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/createAddress.js index 8f34db4..2b74c98 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/createAddress.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/createAddress.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/createQueue.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/createQueue.js index 8ae5f06..09c2832 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/createQueue.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/createQueue.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/deleteAddress.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/deleteAddress.js index 8f880ed..5c06784 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/deleteAddress.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/deleteAddress.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/deleteQueue.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/deleteQueue.js index 4bdc332..882699d 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/deleteQueue.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/deleteQueue.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/diagram.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/diagram.js index 4d0dcc9..3936df7 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/diagram.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/diagram.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/help.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/help.js index 05bbba2..738dafb 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/help.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/help.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/navigation.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/navigation.js index 358b581..328fc71 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/navigation.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/navigation.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/preferences.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/preferences.js index eac8c19..0354e86 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/preferences.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/preferences.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/producers.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/producers.js index f9fb888..f6944b1 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/producers.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/producers.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/queues.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/queues.js index 010b4fc..7e944a6 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/queues.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/queues.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/sendMessage.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/sendMessage.js index a28c6b3..93a5e26 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/sendMessage.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/sendMessage.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/sessions.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/sessions.js index 085f397..0d31836 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/sessions.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/sessions.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/status.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/status.js index 05ffca8..c13088f 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/status.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/status.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/tree.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/tree.js index 89aed53..ac921da 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/tree.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/components/tree.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/services/pagination.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/services/pagination.js index 3421a32..820ce21 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/services/pagination.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/services/pagination.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/services/resource.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/services/resource.js index 8751d27..682634c 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/services/resource.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/services/resource.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/services/sendMessageService.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/services/sendMessageService.js index 5e1c774..89b3e7e 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/services/sendMessageService.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/services/sendMessageService.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/services/toolbar.js b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/services/toolbar.js index 3eae7b3..8052bec 100644 --- a/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/services/toolbar.js +++ b/ui/entaxy-hawtio/artemis-plugin-entaxy/src/main/webapp/plugin/js/services/toolbar.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * artemis-plugin-entaxy * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-branding-plugin/pom.xml b/ui/entaxy-hawtio/entaxy-branding-plugin/pom.xml index c9b0914..a665f85 100644 --- a/ui/entaxy-hawtio/entaxy-branding-plugin/pom.xml +++ b/ui/entaxy-hawtio/entaxy-branding-plugin/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.ui entaxy-hawtio - 1.8.2.2 + 1.8.3 ru.entaxy.esb.ui.hawtio entaxy-branding-plugin diff --git a/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/java/ru/entaxy/ui/hawtio/branding/PluginContextListener.java b/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/java/ru/entaxy/ui/hawtio/branding/PluginContextListener.java index 94494df..baafacc 100644 --- a/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/java/ru/entaxy/ui/hawtio/branding/PluginContextListener.java +++ b/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/java/ru/entaxy/ui/hawtio/branding/PluginContextListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * entaxy-branding-plugin * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/resources/WEB-INF/web.xml b/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/resources/WEB-INF/web.xml index f29bccc..4fd39a9 100644 --- a/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/resources/WEB-INF/web.xml +++ b/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/resources/WEB-INF/web.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ entaxy-branding-plugin ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/index.html b/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/index.html index 2959370..c3edff4 100644 --- a/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/index.html +++ b/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/index.html @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ entaxy-branding-plugin ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/plugin/css/entaxy.css b/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/plugin/css/entaxy.css index c7b0a02..1fac556 100644 --- a/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/plugin/css/entaxy.css +++ b/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/plugin/css/entaxy.css @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * entaxy-branding-plugin * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -18,101 +18,60 @@ * ~~~~~~/licensing~~~~~~ */ -/* jmx tree icon */ -/*.ru-entaxy-esb span.node-icon::before,*/ -.node-entaxytree span.node-icon::before /* BUT this way icons aren't present in JMX */ -/*.ru-entaxy-esb-0-0-0-0-folder span.node-icon::before, -.ru-entaxy-esb-platform-folder span.node-icon::before, -.ru-entaxy-esb-adapters-folder span.node-icon::before, -.ru-entaxy-esb-artemis-adapter-1-folder span.node-icon::before, -.ru-entaxy-esb-artemis-amqp-adapter-1-folder span.node-icon::before, -.ru-entaxy-esb-file-adapter-1-folder span.node-icon::before, -.ru-entaxy-esb-h2-adapter-1-4-199-folder span.node-icon::before, -.ru-entaxy-esb-postgresql-adapter-42-2-9-folder span.node-icon::before, -.ru-entaxy-esb-rabbitmq-amqp-adapter-1-folder span.node-icon::before*/ - { - display: inline-block; - background: url(../img/entaxy.svg); - min-width: 16px; - min-height: 16px; - background-size: 16px 16px; - background-position: -1px center; - background-repeat: no-repeat; - content: "" !important; - vertical-align: middle; +/* jmx tree icons */ + +.entaxy-node-icon span.node-icon::before { + background: url("../img/icons/cranberry-red/entaxy-node-icon.png"); } -/*.ru-entaxy-esb-adapters-folder span.node-icon::before*/ -/*.ru-entaxy-esb-artemis-adapter-1-folder span.node-icon::before -{ - display: inline-block; - background: url(../img/artemis.png); - min-width: 16px; - min-height: 16px; - background-size: 16px 16px; - background-position: -1px center; - background-repeat: no-repeat; - content: "" !important; - vertical-align: middle; +.entaxy-connectors-icon span.node-icon::before { + background: url("../img/icons/cranberry-red/entaxy-connectors-icon.png"); } -.ru-entaxy-esb-artemis-amqp-adapter-1-folder span.node-icon::before -{ - display: inline-block; - background: url(../img/activemq.png); - min-width: 16px; - min-height: 16px; - background-size: 16px 16px; - background-position: -1px center; - background-repeat: no-repeat; - content: "" !important; - vertical-align: middle; +.entaxy-connections-icon span.node-icon::before { + background: url("../img/icons/cranberry-red/entaxy-connections-icon.png"); } -.ru-entaxy-esb-file-adapter-1-folder span.node-icon::before -{ - display: inline-block; - background: url(../img/jesus.jpg); - min-width: 16px; - min-height: 16px; - background-size: 16px 16px; - background-position: -1px center; - background-repeat: no-repeat; - content: "" !important; - vertical-align: middle; +.entaxy-adapter-icon span.node-icon::before { + background: url("../img/icons/cranberry-red/entaxy-adapter-icon.png"); } -.ru-entaxy-esb-h2-adapter-1-4-199-folder span.node-icon::before -{ - display: inline-block; - background: url(../img/h2.png); - min-width: 16px; - min-height: 16px; - background-size: 16px 16px; - background-position: -1px center; - background-repeat: no-repeat; - content: "" !important; - vertical-align: middle; +.entaxy-routes-icon span.node-icon::before { + background: url("../img/icons/cranberry-red/entaxy-routes-icon.png"); } -.ru-entaxy-esb-postgresql-adapter-42-2-9-folder span.node-icon::before -{ - display: inline-block; - background: url(../img/postgresql.png); - min-width: 16px; - min-height: 16px; - background-size: 16px 16px; - background-position: -1px center; - background-repeat: no-repeat; - content: "" !important; - vertical-align: middle; +.entaxy-profiles-icon span.node-icon::before { + background: url("../img/icons/cranberry-red/entaxy-profiles-icon.png"); } -.ru-entaxy-esb-rabbitmq-amqp-adapter-1-folder span.node-icon::before -{ - display: inline-block; - background: url(../img/rabbitmq.svg); - min-width: 16px; +.entaxy-factories-icon span.node-icon::before { + background: url("../img/icons/cranberry-red/entaxy-factories-icon.png"); +} + +.entaxy-platform-icon span.node-icon::before { + background: url("../img/icons/cranberry-red/entaxy-platform-icon.png"); +} + +.entaxy-runtime-icon span.node-icon::before { + background: url("../img/icons/cranberry-red/entaxy-runtime-icon.png"); +} + +.entaxy-resource-icon span.node-icon::before { + background: url("../img/icons/cranberry-red/entaxy-resource-icon.png"); +} + +.entaxy-node-icon span.node-icon::before, +.entaxy-connectors-icon span.node-icon::before, +.entaxy-connections-icon span.node-icon::before, +.entaxy-adapter-icon span.node-icon::before, +.entaxy-routes-icon span.node-icon::before, +.entaxy-profiles-icon span.node-icon::before, +.entaxy-factories-icon span.node-icon::before, +.entaxy-platform-icon span.node-icon::before, +.entaxy-runtime-icon span.node-icon::before, +.entaxy-resource-icon span.node-icon::before { + display: inline-block; + min-width: 16px; min-height: 16px; background-size: 16px 16px; background-position: -1px center; @@ -120,11 +79,9 @@ content: "" !important; vertical-align: middle; } -*/ /* fonts */ - /* You can customise the styles of your application here. */ @font-face { font-family: 'PatternFlyIcons-webfont'; @@ -315,9 +272,10 @@ tbody>tr:hover { color: #fff!important; } -/*.list-group.list-view-pf.list-view-pf-view { - margin-top: -30px; -}*/ +.toast-pf-content { + max-height: calc(100vh - 150px); + overflow-y: auto; +} .entaxy-result-table { width: 300px; @@ -350,24 +308,39 @@ table.dataTable thead .sorting_asc, table.dataTable thead .sorting_desc { /* CSSs for entaxy modal window are below */ .modal-xl { width: 70%; + min-width: 900px; } .modal-body-header { height: 70px; max-height: 70px; - margin-bottom: 15px; padding-top: 5px; padding-left: 15px; padding-right: 15px; - border-bottom: 1px #f5f5f5 solid; + background-color: whitesmoke; + border-bottom: 1px #bbbbbb solid; + border-top: 1px #bbbbbb solid; } .entaxy-modal-container .modal-body { - height: calc(100vh - 300px); - max-height: calc(100vh - 300px); + height: calc(100vh - 270px); + max-height: calc(100vh - 270px); padding: 0px; } +.entaxy-modal-container .modal-body-without-header { + height: calc(100vh - 230px); + max-height: calc(100vh - 230px); + padding: 0px; + margin-top:15px; +} + +.entaxy-modal-container .modal-footer { + background-color: whitesmoke; + border-top: 1px #bbbbbb solid; + margin-top: 0px; +} + .modal-list-container { display: flex; flex-direction: column; @@ -379,12 +352,38 @@ table.dataTable thead .sorting_asc, table.dataTable thead .sorting_desc { padding-right: 20px; } +.group-list .modal-list-toolbar-container .toolbar-pf { + background-color: #cfcdcd; + border-bottom: 1px solid #ffffff; + padding-top: 15px; +} + +.modal-list-toolbar-container .toolbar-pf .form-group { + border-right: none; +} + +.group-list .modal-list-toolbar-container .toolbar-pf-results { + border-top: none; +} + .modal-list-list-container { min-height:200px; overflow-y:auto; flex:initial; } +.modal-list-list-container .list-view-pf .list-group-item { + border-color: #ededed; +} + +.modal-list-list-container .list-view-pf-view { + margin-top: 0; +} + +.modal-list-list-container .list-group { + margin-bottom: 0; +} + /* This changes the size of the list-view item */ /*.list-group-item*/ .modal-list-list-container .list-view-pf-main-info { @@ -393,20 +392,62 @@ table.dataTable thead .sorting_asc, table.dataTable thead .sorting_desc { padding-bottom: 10px; } -.modal-group-fields-container { +.group-list .modal-list-list-container .blank-slate-pf { + background-color: #cfcdcd; + border: none; +} + +.modal-group-fields-container, +.modal-list-with-description-container { height: 100%; max-height: 100%; display: flex; flex-direction: row; } +.modal-list-with-description-list-container { + width: 50%; + border-right: #d1d1d1 solid 1px; +} + +.modal-description-container { + width: 50%; +} + +.modal-description-title { + height: 47px; + padding: 15px; + border-bottom: #d1d1d1 solid 1px; +} + +.modal-description-body { + padding: 15px; +} + .modal-groups-list-container { width: 335px; + padding-bottom: 15px; + background-color: #cfcdcd; +} + +.modal-groups-list-container .list-group-item { + background-color: #cfcdcd; + border-width: 0px; +} + +.modal-groups-list-container .list-group-item:first-child { + border-top: 0px; +} + +.modal-groups-list-container .list-group-item.active { + background-color: #ffffff; } .modal-group-fields-form-container { overflow-y: auto; flex: auto; + padding-top: 15px; + padding-bottom: 15px; } .modal-group-fields-form-container .form-group { @@ -444,6 +485,118 @@ table.dataTable thead .sorting_asc, table.dataTable thead .sorting_desc { -o-transform: translateY(-50%) !important;*/ } +/* Styles for labels and popovers in modal */ + +.label-col { + text-align: right; +} + +.label-col .control-label { + display: unset; +} + +.form-group .popover { + width: max-content; + max-width: 200%; +} + +.label-description-popover { + padding: 2px 0px 2px 2px; +} + +.label-description-popover:focus { + outline: none; +} + +.label-description-popover:active:focus { + outline: none; +} + +/*These are for custom forms*/ + +.entaxy-xml-form { + width: 100%; + height: 26px; +} + +.custom-select .caret { + float: right; + margin-top: 6px; +} + +.btn-select { + font-size: 13.5px; + border-radius: 0; + text-align: left; + vertical-align: middle; + padding: 0px 6px; +} + +.btn-select:focus, +.btn-select:active:focus { + outline: none; +} + +.custom-select .dropdown-menu { + font-size: 13.5px; + max-height: 100px; + overflow-y: auto; + left: auto; + width: calc(100% - 40px); +} + +.custom-select .dropdown-menu li { + line-height:26px !important; +} + +.dropdown-option-new { + background-color: whitesmoke; +} + +.dropdown-option-new span { + margin-right: 5px; +} + +select.form-control { + font-size: 13.5px; +} + +/*Margin for health checks*/ +.health-checks-status { + margin-right: 10px; +} + +/* Fixes artemis preferences form margin */ +.artemis-preferences-form { + margin-top: 20px; +} + +.route-source-header-container { + display: flex; +} + +.route-source-header-container h2 { + display: inline-block; +} + +.route-source-error-message { + font-size: 13.5px; + color: #c00; + padding-left: 10px; + margin-top: 22.5px; +} + +.xml-route-source-container { + padding-bottom: 15px; +} + +.properties-container { + height: calc(100vh - 320px); + border-top: 1px #bbb solid; + border-bottom: 1px #bbb solid; + margin-bottom: 15px; +} + /*This is the original css from HawtIO 1,leaving as is as somemay be used*/ * { font-family: "Open Sans"; @@ -596,6 +749,57 @@ ul.dynatree-container li { border: 1px solid #d4d4d4; } +.xml-editor-container { + margin-left: 20px; + margin-right: 20px; +} + +.xml-editor-container .editor-autoresize .CodeMirror-scroll { + height: calc(100vh - 240px); +} + +.xml-route-source-container .editor-autoresize .CodeMirror-scroll { + height: calc(100vh - 320px); +} + +.CodeMirror-hints { + position: absolute; + z-index: 2000; + overflow: hidden; + list-style: none; + + margin: 0; + padding: 2px; + + -webkit-box-shadow: 2px 3px 5px rgba(0,0,0,.2); + -moz-box-shadow: 2px 3px 5px rgba(0,0,0,.2); + box-shadow: 2px 3px 5px rgba(0,0,0,.2); + border-radius: 3px; + border: 1px solid silver; + + background: white; + font-size: 90%; + font-family: monospace; + + max-height: 20em; + overflow-y: auto; + box-sizing: border-box; +} + +.CodeMirror-hint { + margin: 0; + padding: 0 4px; + border-radius: 2px; + white-space: pre; + color: black; + cursor: pointer; +} + +li.CodeMirror-hint-active { + background: #08f; + color: white; +} + i.expandable-indicator { color: #666; } diff --git a/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/plugin/img/camel.svg b/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/plugin/img/camel.svg index 49f932b..e056482 100644 --- a/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/plugin/img/camel.svg +++ b/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/plugin/img/camel.svg @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ entaxy-branding-plugin ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/plugin/img/entaxy.svg b/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/plugin/img/entaxy.svg index 887877a..6979f5d 100644 --- a/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/plugin/img/entaxy.svg +++ b/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/plugin/img/entaxy.svg @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ entaxy-branding-plugin ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/plugin/js/brandingPlugin.js b/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/plugin/js/brandingPlugin.js index d96c817..d951ef5 100644 --- a/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/plugin/js/brandingPlugin.js +++ b/ui/entaxy-hawtio/entaxy-branding-plugin/src/main/webapp/plugin/js/brandingPlugin.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * entaxy-branding-plugin * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-h2-plugin/pom.xml b/ui/entaxy-hawtio/entaxy-h2-plugin/pom.xml index 21aedfc..6938cb6 100644 --- a/ui/entaxy-hawtio/entaxy-h2-plugin/pom.xml +++ b/ui/entaxy-hawtio/entaxy-h2-plugin/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.ui entaxy-hawtio - 1.8.2.2 + 1.8.3 ru.entaxy.esb.ui.hawtio entaxy-h2-plugin diff --git a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/java/ru/entaxy/ui/hawtio/h2/PluginContextListener.java b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/java/ru/entaxy/ui/hawtio/h2/PluginContextListener.java index ee6e382..9e0750f 100644 --- a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/java/ru/entaxy/ui/hawtio/h2/PluginContextListener.java +++ b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/java/ru/entaxy/ui/hawtio/h2/PluginContextListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * entaxy-management-plugin * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/resources/WEB-INF/web.xml b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/resources/WEB-INF/web.xml index 0a034bf..bff9e7c 100644 --- a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/resources/WEB-INF/web.xml +++ b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/resources/WEB-INF/web.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ entaxy-management-plugin ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/index.html b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/index.html index 34e0ea6..41834e2 100644 --- a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/index.html +++ b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/index.html @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ entaxy-management-plugin ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/html/preferences.html b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/html/preferences.html index e22dab8..4252c91 100644 --- a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/html/preferences.html +++ b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/html/preferences.html @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ entaxy-management-plugin ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/html/tree/content.html b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/html/tree/content.html index d378eb1..1827cc8 100644 --- a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/html/tree/content.html +++ b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/html/tree/content.html @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ entaxy-management-plugin ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/html/tree/header.html b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/html/tree/header.html index 7ac2f73..b08f618 100644 --- a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/html/tree/header.html +++ b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/html/tree/header.html @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ entaxy-management-plugin ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/js/components/h2Console.js b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/js/components/h2Console.js index ea3badf..a398205 100644 --- a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/js/components/h2Console.js +++ b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/js/components/h2Console.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * entaxy-h2-plugin * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/js/components/navigation.js b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/js/components/navigation.js index 37586bc..b6ee586 100644 --- a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/js/components/navigation.js +++ b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/js/components/navigation.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * entaxy-management-plugin * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/js/components/tree.js b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/js/components/tree.js index c017e01..3e49c10 100644 --- a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/js/components/tree.js +++ b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/js/components/tree.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * entaxy-management-plugin * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/js/entaxyH2Plugin.js b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/js/entaxyH2Plugin.js index 671291f..b3d3093 100644 --- a/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/js/entaxyH2Plugin.js +++ b/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/js/entaxyH2Plugin.js @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * entaxy-management-plugin * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-management-plugin/pom.xml b/ui/entaxy-hawtio/entaxy-management-plugin/pom.xml index 6679a18..e1620ea 100644 --- a/ui/entaxy-hawtio/entaxy-management-plugin/pom.xml +++ b/ui/entaxy-hawtio/entaxy-management-plugin/pom.xml @@ -3,7 +3,7 @@ ru.entaxy.esb.ui entaxy-hawtio - 1.8.2.2 + 1.8.3 ru.entaxy.esb.ui.hawtio entaxy-management-plugin diff --git a/ui/entaxy-hawtio/entaxy-management-plugin/src/main/java/ru/entaxy/ui/hawtio/management/PluginContextListener.java b/ui/entaxy-hawtio/entaxy-management-plugin/src/main/java/ru/entaxy/ui/hawtio/management/PluginContextListener.java index 6b6d45f..fe074db 100644 --- a/ui/entaxy-hawtio/entaxy-management-plugin/src/main/java/ru/entaxy/ui/hawtio/management/PluginContextListener.java +++ b/ui/entaxy-hawtio/entaxy-management-plugin/src/main/java/ru/entaxy/ui/hawtio/management/PluginContextListener.java @@ -2,7 +2,7 @@ * ~~~~~~licensing~~~~~~ * entaxy-management-plugin * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-management-plugin/src/main/resources/WEB-INF/web.xml b/ui/entaxy-hawtio/entaxy-management-plugin/src/main/resources/WEB-INF/web.xml index 64815a6..05ba0e8 100644 --- a/ui/entaxy-hawtio/entaxy-management-plugin/src/main/resources/WEB-INF/web.xml +++ b/ui/entaxy-hawtio/entaxy-management-plugin/src/main/resources/WEB-INF/web.xml @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ entaxy-management-plugin ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/index.html b/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/index.html index 584dd91..c628b71 100644 --- a/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/index.html +++ b/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/index.html @@ -3,7 +3,7 @@ ~~~~~~licensing~~~~~~ entaxy-management-plugin ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/plugin/html/preferences.html b/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/plugin/html/preferences.html index e22dab8..4252c91 100644 --- a/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/plugin/html/preferences.html +++ b/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/plugin/html/preferences.html @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ entaxy-management-plugin ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/plugin/html/tree/content.html b/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/plugin/html/tree/content.html index 9883498..5646b4f 100644 --- a/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/plugin/html/tree/content.html +++ b/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/plugin/html/tree/content.html @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ entaxy-management-plugin ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/plugin/html/tree/header.html b/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/plugin/html/tree/header.html index 7ac2f73..b08f618 100644 --- a/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/plugin/html/tree/header.html +++ b/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/plugin/html/tree/header.html @@ -2,7 +2,7 @@ ~~~~~~licensing~~~~~~ entaxy-management-plugin ========== - Copyright (C) 2020 - 2021 EmDev LLC + Copyright (C) 2020 - 2023 EmDev LLC ========== Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/plugin/js/components/addConnectorModal.js b/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/plugin/js/components/addConnectorModal.js index e2bff85..f43fe06 100644 --- a/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/plugin/js/components/addConnectorModal.js +++ b/ui/entaxy-hawtio/entaxy-management-plugin/src/main/webapp/plugin/js/components/addConnectorModal.js @@ -2,14 +2,14 @@ * ~~~~~~licensing~~~~~~ * entaxy-management-plugin * ========== - * Copyright (C) 2020 - 2021 EmDev LLC + * Copyright (C) 2020 - 2023 EmDev LLC * ========== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -26,48 +26,38 @@ var Entaxy; }, template: ` +
-