Merge pull request 'fixed adding operation and operation response paths with emqx integration' (#10) from amalka.subasinghe/community-product:master into master

Reviewed-on: #10
pull/11/head
Charitha Goonetilleke 2 years ago
commit 3a041de245

@ -84,7 +84,7 @@
<artifactId>maven-antrun-plugin</artifactId> <artifactId>maven-antrun-plugin</artifactId>
<executions> <executions>
<execution> <execution>
<id>update-dbscripts</id> <id>update-dbscripts-1</id>
<phase>process-resources</phase> <phase>process-resources</phase>
<goals> <goals>
<goal>run</goal> <goal>run</goal>
@ -93,17 +93,34 @@
<target name="replace dbscripts to avoid tenant creation issue "> <target name="replace dbscripts to avoid tenant creation issue ">
<replace file="target/${wso2am}/dbscripts/db2.sql" token="REG_VALUE VARCHAR(1000)," value="REG_VALUE VARCHAR(10000)," /> <replace file="target/${wso2am}/dbscripts/db2.sql" token="REG_VALUE VARCHAR(1000)," value="REG_VALUE VARCHAR(10000)," />
<replace file="target/${wso2am}/dbscripts/h2.sql" token="REG_VALUE VARCHAR(1000)," value="REG_VALUE VARCHAR(10000)," /> <replace file="target/${wso2am}/dbscripts/h2.sql" token="REG_VALUE VARCHAR(1000)," value="REG_VALUE VARCHAR(10000)," />
<replace file="target/${wso2am}/dbscripts/informix.sql" token="REG_VALUE LVARCHAR(1000)," value="REG_VALUE LVARCHAR(10000)," />
<replace file="target/${wso2am}/dbscripts/mssql.sql" token="REG_VALUE VARCHAR(1000)," value="REG_VALUE VARCHAR(10000)," /> <replace file="target/${wso2am}/dbscripts/mssql.sql" token="REG_VALUE VARCHAR(1000)," value="REG_VALUE VARCHAR(10000)," />
<replace file="target/${wso2am}/dbscripts/mysql.sql" token="REG_VALUE VARCHAR(1000)," value="REG_VALUE VARCHAR(10000)," /> <replace file="target/${wso2am}/dbscripts/mysql.sql" token="REG_VALUE VARCHAR(1000)," value="REG_VALUE VARCHAR(10000)," />
<replace file="target/${wso2am}/dbscripts/mysql_cluster.sql" token="REG_VALUE VARCHAR(1000)," value="REG_VALUE VARCHAR(10000)," /> <replace file="target/${wso2am}/dbscripts/mysql_cluster.sql" token="REG_VALUE VARCHAR(1000)," value="REG_VALUE VARCHAR(10000)," />
<replace file="target/${wso2am}/dbscripts/oracle.sql" token="REG_VALUE VARCHAR2(1000)," value="REG_VALUE VARCHAR2(10000)," /> <replace file="target/${wso2am}/dbscripts/oracle.sql" token="REG_VALUE VARCHAR2(1000)," value="REG_VALUE VARCHAR2(10000)," />
<replace file="target/${wso2am}/dbscripts/oracle.sql" token="REG_VALUE VARCHAR2(1000)," value="REG_VALUE VARCHAR2(10000)," />
<replace file="target/${wso2am}/dbscripts/oracle_rac.sql" token="REG_VALUE VARCHAR2(1000)," value="REG_VALUE VARCHAR2(10000)," /> <replace file="target/${wso2am}/dbscripts/oracle_rac.sql" token="REG_VALUE VARCHAR2(1000)," value="REG_VALUE VARCHAR2(10000)," />
<replace file="target/${wso2am}/dbscripts/postgresql.sql" token="REG_VALUE VARCHAR(1000)," value="REG_VALUE VARCHAR(10000)," /> <replace file="target/${wso2am}/dbscripts/postgresql.sql" token="REG_VALUE VARCHAR(1000)," value="REG_VALUE VARCHAR(10000)," />
</target> </target>
</configuration> </configuration>
</execution> </execution>
<execution>
<id>update-dbscripts-2</id>
<phase>process-resources</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target name="increase IDN_OAUTH2_ACCESS_TOKEN_SCOPE -> TOKEN_SCOPE column size">
<replace file="target/${wso2am}/dbscripts/apimgt/db2.sql" token="TOKEN_SCOPE VARCHAR (60) NOT NULL," value="TOKEN_SCOPE VARCHAR (255) NOT NULL," />
<replace file="target/${wso2am}/dbscripts/apimgt/h2.sql" token="TOKEN_SCOPE VARCHAR (60)," value="TOKEN_SCOPE VARCHAR (255)," />
<replace file="target/${wso2am}/dbscripts/apimgt/mssql.sql" token="TOKEN_SCOPE VARCHAR (60)," value="TOKEN_SCOPE VARCHAR (255)," />
<replace file="target/${wso2am}/dbscripts/apimgt/mysql.sql" token="TOKEN_SCOPE VARCHAR (60)," value="TOKEN_SCOPE VARCHAR (255)," />
<replace file="target/${wso2am}/dbscripts/apimgt/mysql_cluster.sql" token="TOKEN_SCOPE VARCHAR(60)," value="TOKEN_SCOPE VARCHAR(255)," />
<replace file="target/${wso2am}/dbscripts/apimgt/oracle.sql" token="TOKEN_SCOPE VARCHAR2 (60)," value="TOKEN_SCOPE VARCHAR2 (255)," />
<replace file="target/${wso2am}/dbscripts/apimgt/oracle_rac.sql" token="TOKEN_SCOPE VARCHAR2 (60)," value="TOKEN_SCOPE VARCHAR2 (60)," />
<replace file="target/${wso2am}/dbscripts/apimgt/postgresql.sql" token="TOKEN_SCOPE VARCHAR (60)," value="TOKEN_SCOPE VARCHAR (60)," />
</target>
</configuration>
</execution>
<execution> <execution>
<!--Alter shared h2 db --> <!--Alter shared h2 db -->
<id>alter-shared-h2-db</id> <id>alter-shared-h2-db</id>
@ -323,6 +340,23 @@
org.wso2.carbon.devicemgt:io.entgra.device.mgt.extensions.stateengine.feature:${carbon.device.mgt.version} org.wso2.carbon.devicemgt:io.entgra.device.mgt.extensions.stateengine.feature:${carbon.device.mgt.version}
</featureArtifactDef> </featureArtifactDef>
<!-- Task Mgt Feature-->
<featureArtifactDef>
org.wso2.carbon.devicemgt:io.entgra.task.mgt.feature:${carbon.device.mgt.version}
</featureArtifactDef>
<!-- End of Task Mgt Feature-->
<!-- Notification Logger Feature-->
<featureArtifactDef>
org.wso2.carbon.devicemgt:io.entgra.notification.logger.feature:${carbon.device.mgt.version}
</featureArtifactDef>
<!-- End of Notification Logger Feature-->
<!-- APIM analytics extension feature-->
<featureArtifactDef>
org.wso2.carbon.devicemgt:io.entgra.device.mgt.core.apimgt.analytics.extension.feature:${carbon.device.mgt.version}
</featureArtifactDef>
<!-- End of APIM analytics extension feature-->
</featureArtifacts> </featureArtifacts>
</configuration> </configuration>
</execution> </execution>
@ -482,6 +516,24 @@
<id>io.entgra.device.mgt.extensions.stateengine.feature.group</id> <id>io.entgra.device.mgt.extensions.stateengine.feature.group</id>
<version>${carbon.device.mgt.version}</version> <version>${carbon.device.mgt.version}</version>
</feature> </feature>
<!--Task mgt-->
<feature>
<id>io.entgra.task.mgt.feature.group</id>
<version>${carbon.device.mgt.version}</version>
</feature>
<!--Notification Logger-->
<feature>
<id>io.entgra.notification.logger.feature.group</id>
<version>${carbon.device.mgt.version}</version>
</feature>
<!--APIM Analytics extension-->
<feature>
<id>io.entgra.device.mgt.core.apimgt.analytics.extension.feature.group</id>
<version>${carbon.device.mgt.version}</version>
</feature>
</features> </features>
</configuration> </configuration>
</execution> </execution>

@ -92,6 +92,10 @@
<source>src/core/conf/input-event-adapters.xml</source> <source>src/core/conf/input-event-adapters.xml</source>
<outputDirectory>${entgra-iot-core}/repository/conf/</outputDirectory> <outputDirectory>${entgra-iot-core}/repository/conf/</outputDirectory>
</file> </file>
<file>
<source>src/core/conf/output-event-adapters.xml.j2</source>
<outputDirectory>${entgra-iot-core}/repository/resources/conf/templates/repository/conf</outputDirectory>
</file>
<file> <file>
<source>src/core/keystores/wso2carbon.jks</source> <source>src/core/keystores/wso2carbon.jks</source>
<outputDirectory>${entgra-iot-core}/repository/resources/security/</outputDirectory> <outputDirectory>${entgra-iot-core}/repository/resources/security/</outputDirectory>

@ -104,6 +104,9 @@ enable = false
config_endpoint = "https://localhost:8080/auth/v1" config_endpoint = "https://localhost:8080/auth/v1"
auth_token = "" auth_token = ""
[web_app.listener]
class_name = ["org.wso2.carbon.apimgt.webapp.publisher.lifecycle.listener.APIPublisherLifecycleListener", "org.wso2.carbon.device.mgt.core.config.permission.lifecycle.WebAppDeploymentLifecycleListener"]
[apim.key_manager] [apim.key_manager]
#service_url = "https://localhost:${mgt.transport.https.port}/services/" #service_url = "https://localhost:${mgt.transport.https.port}/services/"
#username = "$ref{super_admin.username}" #username = "$ref{super_admin.username}"
@ -277,3 +280,6 @@ grant_validator="org.wso2.carbon.device.mgt.oauth.extensions.validators.AccessTo
[oauth.token_renewal] [oauth.token_renewal]
renew_refresh_token=false renew_refresh_token=false
[device_mgt_conf.pull_notification_conf]
enabled=false

@ -0,0 +1,170 @@
<!--
~ Copyright (c) 2005 - 2014, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
~
~ 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.
-->
<outputEventAdaptersConfig xmlns:svns="http://org.wso2.securevault/configuration">
<adapterConfig type="wso2event">
<property key="default.thrift.tcp.url">tcp://localhost:7612</property>
<property key="default.thrift.ssl.url">ssl://localhost:7712</property>
<property key="default.binary.tcp.url">tcp://localhost:9612</property>
<property key="default.binary.ssl.url">ssl://localhost:9712</property>
</adapterConfig>
<adapterConfig type="rdbms">
<property key="string">VARCHAR(255)</property>
<property key="double">DOUBLE</property>
<property key="integer">INT</property>
<property key="long">BIGINT</property>
<property key="float">FLOAT</property>
<property key="boolean">BOOL</property>
<property key="createTable">CREATE TABLE $TABLE_NAME ($COLUMN_TYPES)</property>
<property key="insertDataToTable">INSERT INTO $TABLE_NAME ($COLUMNS) VALUES ($VALUES)</property>
<property key="isTableExist">SELECT * FROM $TABLE_NAME limit 1</property>
<property key="updateTableRow">UPDATE $TABLE_NAME SET $COLUMN_VALUES WHERE $CONDITION</property>
<property key="comma">,</property>
<property key="questionMark">?</property>
<property key="equal">=</property>
<property key="and">AND</property>
<property key="selectAllColumnsDataTypeInTable">SELECT COLUMN_NAME, DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$TABLE_NAME'</property>
<property key="selectFromTable">SELECT $COLUMNS FROM $TABLE_NAME</property>
<property key="oracle.string">varchar2(255)</property>
<property key="oracle.long">CLOB</property>
<property key="oracle.double">BINARY_DOUBLE</property>
<property key="oracle.isTableExist">SELECT * FROM $TABLE_NAME WHERE ROWNUM = 1</property>
<property key="oracle.selectAllColumnsDataTypeInTable">SELECT COLUMN_NAME, DATA_TYPE FROM USER_TAB_COLS WHERE TABLE_NAME = '$TABLE_NAME'</property>
<property key="mssql.string">varchar2(255)</property>
<property key="mssql.isTableExist">SELECT TOP 1 * FROM $TABLE_NAME</property>
<property key="mssql.selectAllColumnsDataTypeInTable">SELECT COLUMN_NAME, DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$TABLE_NAME'</property>
<property key="h2.integer">varchar2(255)</property>
<property key="h2.long">REAL</property>
<property key="h2.selectAllColumnsDataTypeInTable">SHOW COLUMNS FROM $TABLE_NAME</property>
</adapterConfig>
<adapterConfig type="http">
<!-- Thread Pool Related Properties -->
<property key="minThread">8</property>
<property key="maxThread">100</property>
<property key="keepAliveTimeInMillis">20000</property>
<property key="jobQueueSize">10000</property>
<!-- HTTP Client Pool Related Properties -->
<property key="defaultMaxConnectionsPerHost">50</property>
<property key="maxTotalConnections">1000</property>
</adapterConfig>
<adapterConfig type="jms">
<!-- Thread Pool Related Properties -->
<property key="minThread">{{output_adapter.jms.min_thread}}</property>
<property key="maxThread">{{output_adapter.jms.max_thread}}</property>
<property key="keepAliveTimeInMillis">{{output_adapter.jms.keep_alive_time}}</property>
<property key="jobQueueSize">{{output_adapter.jms.job_queue_size}}</property>
</adapterConfig>
<adapterConfig type="mqtt">
<!-- Thread Pool Related Properties -->
<property key="minThread">8</property>
<property key="maxThread">100</property>
<property key="keepAliveTimeInMillis">20000</property>
<property key="jobQueueSize">10000</property>
<property key="connectionKeepAliveInterval">60</property>
</adapterConfig>
<adapterConfig type="kafka">
<!-- Thread Pool Related Properties -->
<property key="minThread">8</property>
<property key="maxThread">100</property>
<property key="keepAliveTimeInMillis">20000</property>
<property key="jobQueueSize">10000</property>
</adapterConfig>
<adapterConfig type="email">
<!-- Comment mail.smtp.user and mail.smtp.password properties to support connecting SMTP servers which use trust
based authentication rather username/password authentication -->
<property key="mail.smtp.from">{{output_adapter.email.from_address}}</property>
<property key="mail.smtp.user">{{output_adapter.email.username}}</property>
<property key="mail.smtp.password">{{output_adapter.email.password}}</property>
<property key="mail.smtp.host">{{output_adapter.email.hostname}}</property>
<property key="mail.smtp.port">{{output_adapter.email.port}}</property>
<property key="mail.smtp.starttls.enable">{{output_adapter.email.enable_start_tls}}</property>
<property key="mail.smtp.auth">{{output_adapter.email.enable_authentication}}</property>
<property key="mail.smtp.signature">{{output_adapter.email.signature}}</property>
<property key="mail.smtp.replyTo">{{output_adapter.email.reply_to}}</property>
{% if output_adapter.email.custom_properties is defined %}
<!-- Custom Properties -->
{% for property_name,property_value in output_adapter.email.custom_properties.items() %}
<property key="{{property_name}}">{{property_value}}</property>
{% endfor %}
{% endif %}
<!-- Thread Pool Related Properties -->
<property key="minThread">8</property>
<property key="maxThread">100</property>
<property key="keepAliveTimeInMillis">20000</property>
<property key="jobQueueSize">10000</property>
</adapterConfig>
<adapterConfig type="ui">
<property key="eventQueueSize">30</property>
<!-- Thread Pool Related Properties -->
<property key="minThread">8</property>
<property key="maxThread">100</property>
<property key="keepAliveTimeInMillis">20000</property>
<property key="jobQueueSize">10000</property>
</adapterConfig>
<adapterConfig type="websocket-local">
<!-- Thread Pool Related Properties -->
<property key="minThread">8</property>
<property key="maxThread">100</property>
<property key="keepAliveTimeInMillis">20000</property>
<property key="jobQueueSize">10000</property>
</adapterConfig>
<adapterConfig type="websocket">
<!-- Thread Pool Related Properties -->
<property key="minThread">8</property>
<property key="maxThread">100</property>
<property key="keepAliveTimeInMillis">20000</property>
<property key="jobQueueSize">10000</property>
</adapterConfig>
<adapterConfig type="soap">
<!-- Thread Pool Related Properties -->
<property key="minThread">8</property>
<property key="maxThread">100</property>
<property key="keepAliveTimeInMillis">20000</property>
<property key="jobQueueSize">10000</property>
<!-- Axis2 Client Connection Related Properties -->
<property key="axis2ClientConnectionTimeout">10000</property>
<property key="reuseHTTPClient">true</property>
<property key="autoReleaseConnection">true</property>
<property key="maxConnectionsPerHost">50</property>
</adapterConfig>
<adapterConfig type="oauth-mqtt">
<!-- Thread Pool Related Properties -->
<property key="minThread">8</property>
<property key="maxThread">100</property>
<property key="keepAliveTimeInMillis">20000</property>
<property key="jobQueueSize">10000</property>
<property key="connectionKeepAliveInterval">60</property>
<property key="dcrUrl">https://${iot.keymanager.host}:${iot.keymanager.https.port}/client-registration/v0.17/register</property>
<property key="tokenUrl">https://${iot.gateway.host}:${iot.gateway.https.port}/token</property>
<property key="url">tcp://${mqtt.broker.host}:${mqtt.broker.port}</property>
<property key="username">admin</property>
<property key="password">admin</property>
<property key="qos">2</property>
<property key="clearSession">true</property>
</adapterConfig>
</outputEventAdaptersConfig>