From 0ba26a3a458fc5906b4c942d693062e76d775a67 Mon Sep 17 00:00:00 2001 From: sinthuja Date: Tue, 21 Mar 2017 18:17:23 +0530 Subject: [PATCH] Sharing the user db with analytics and core profiles, and adding the tenant theme, --- .../src/analytics/conf/ds_config.xml | 24 +- .../src/analytics/conf/registry.xml | 2 +- .../allthemes/Default/admin/main.css | 261 ++ .../allthemes/Default/images/back-repeat.png | Bin 0 -> 967 bytes .../Default/images/bam-header-bg.png | Bin 0 -> 24917 bytes .../Default/images/bam-header-logo.png | Bin 0 -> 5758 bytes .../Default/images/bam-server-menu-header.gif | Bin 0 -> 176 bytes .../allthemes/Default/images/menu-margin.gif | Bin 0 -> 121 bytes .../allthemes/Default/images/menu_header.gif | Bin 0 -> 166 bytes .../resources/portal/libs/VizGrammar_2.js | 2832 ----------------- .../resources/portal/libs/iot-gadget-utils.js | 60 - modules/distribution/src/assembly/bin.xml | 16 +- .../src/assembly/filter.properties | 1 + .../conf/datasources/master-datasources.xml | 2 +- .../src/core/plugins/plugins-deployer.xml | 2 +- .../keystores/products/wso2certs.jks | Bin 14185 -> 13427 bytes .../resources/keystores/stratos/wso2certs.jks | Bin 14185 -> 13427 bytes pom.xml | 6 +- 18 files changed, 299 insertions(+), 2907 deletions(-) create mode 100644 modules/distribution/src/analytics/resources/allthemes/Default/admin/main.css create mode 100644 modules/distribution/src/analytics/resources/allthemes/Default/images/back-repeat.png create mode 100644 modules/distribution/src/analytics/resources/allthemes/Default/images/bam-header-bg.png create mode 100644 modules/distribution/src/analytics/resources/allthemes/Default/images/bam-header-logo.png create mode 100644 modules/distribution/src/analytics/resources/allthemes/Default/images/bam-server-menu-header.gif create mode 100644 modules/distribution/src/analytics/resources/allthemes/Default/images/menu-margin.gif create mode 100644 modules/distribution/src/analytics/resources/allthemes/Default/images/menu_header.gif delete mode 100644 modules/distribution/src/analytics/resources/portal/libs/VizGrammar_2.js delete mode 100644 modules/distribution/src/analytics/resources/portal/libs/iot-gadget-utils.js diff --git a/modules/distribution/src/analytics/conf/ds_config.xml b/modules/distribution/src/analytics/conf/ds_config.xml index 39304210..d1fa4845 100644 --- a/modules/distribution/src/analytics/conf/ds_config.xml +++ b/modules/distribution/src/analytics/conf/ds_config.xml @@ -8,7 +8,29 @@ - jdbc:h2:repository/database/WSO2CARBON_DB;DB_CLOSE_ON_EXIT=FALSE + jdbc:h2:../../repository/database/WSO2CARBON_DB;DB_CLOSE_ON_EXIT=FALSE;AUTO_SERVER=TRUE + wso2carbon + wso2carbon + org.h2.Driver + 50 + 60000 + true + SELECT 1 + 30000 + false + + + + + + WSO2_REGISTRY_DB + The datasource used for registry and user manager + + jdbc/WSO2RegDB + + + + jdbc:h2:repository/database/WSO2CARBON_DB;DB_CLOSE_ON_EXIT=FALSE;AUTO_SERVER=TRUE wso2carbon wso2carbon org.h2.Driver diff --git a/modules/distribution/src/analytics/conf/registry.xml b/modules/distribution/src/analytics/conf/registry.xml index 7d58a9a3..697f2f3c 100644 --- a/modules/distribution/src/analytics/conf/registry.xml +++ b/modules/distribution/src/analytics/conf/registry.xml @@ -29,7 +29,7 @@ / - jdbc/WSO2CarbonDB + jdbc/WSO2RegDB ../p2-profile/analytics-profile/target/wso2carbon-core-${carbon.kernel.version}/wso2/components @@ -855,11 +859,9 @@ **/.settings features/** **/org.wso2.carbon.feature.mgt.ui* - lib/** **/json_2.0.0.wso2v1.jar **/nimbus-jose-jwt_2.26.1.wso2v2.jar **/artifacts.xml - p2/** @@ -996,11 +998,9 @@ **/.settings features/** **/org.wso2.carbon.feature.mgt.ui* - lib/** **/json_2.0.0.wso2v1.jar **/nimbus-jose-jwt_2.26.1.wso2v2.jar **/artifacts.xml - p2/** diff --git a/modules/distribution/src/assembly/filter.properties b/modules/distribution/src/assembly/filter.properties index 96928997..1ce5bf11 100644 --- a/modules/distribution/src/assembly/filter.properties +++ b/modules/distribution/src/assembly/filter.properties @@ -25,5 +25,6 @@ default.server.role=IoTServer cep.server.role=ComplexEventProcessor das.server.role=DataAnalyticsServer cdmf.platform.role=CDMFPlatform +cdmf.analytics.role=CDMFAnalytics geodashboard.role=GeoDashboard bundle.creators=org.wso2.carbon.mediator.bridge.MediatorBundleCreator diff --git a/modules/distribution/src/core/conf/datasources/master-datasources.xml b/modules/distribution/src/core/conf/datasources/master-datasources.xml index ec22c8a6..d7d5a8b1 100755 --- a/modules/distribution/src/core/conf/datasources/master-datasources.xml +++ b/modules/distribution/src/core/conf/datasources/master-datasources.xml @@ -30,7 +30,7 @@ - jdbc:h2:repository/database/WSO2CARBON_DB;DB_CLOSE_ON_EXIT=FALSE;AUTO_SERVER=TRUE;AUTO_SERVER_PORT=9095 + jdbc:h2:repository/database/WSO2CARBON_DB;DB_CLOSE_ON_EXIT=FALSE;AUTO_SERVER=TRUE wso2carbon wso2carbon org.h2.Driver diff --git a/modules/distribution/src/core/plugins/plugins-deployer.xml b/modules/distribution/src/core/plugins/plugins-deployer.xml index ed2660ca..98a62809 100644 --- a/modules/distribution/src/core/plugins/plugins-deployer.xml +++ b/modules/distribution/src/core/plugins/plugins-deployer.xml @@ -207,6 +207,6 @@ - 3.0.13-SNAPSHOT + 3.0.15-SNAPSHOT \ No newline at end of file diff --git a/modules/integration/tests-iot-web-ui/src/test/resources/keystores/products/wso2certs.jks b/modules/integration/tests-iot-web-ui/src/test/resources/keystores/products/wso2certs.jks index eb27997d520b2065759b5db5622a601fe56b3059..d40aca984823d4ab2381e677fb7c6fbce0c5e933 100644 GIT binary patch delta 8560 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.6.1 - 4.6.5-SNAPSHOT - 4.6.5-SNAPSHOT + 4.6.5 + 4.6.5 4.7.0 - 2.0.31-SNAPSHOT + 2.0.32-SNAPSHOT [2.0.0, 3.0.0)