mirror of
https://repository.entgra.net/community/device-mgt-plugins.git
synced 2025-09-16 23:42:15 +00:00
Merge branch 'master' of https://github.com/wso2/carbon-device-mgt-plugins into fileTransfer
This commit is contained in:
commit
ca2cf5382f
@ -21,7 +21,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>iot-analytics</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>iot-analytics</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>iot-analytics</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>iot-analytics</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>analytics</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>carbon-device-mgt-plugins-parent</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
<parent>
|
||||
<artifactId>androidsense-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<parent>
|
||||
<artifactId>androidsense-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -128,11 +128,6 @@
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||
<artifactId>org.wso2.carbon.apimgt.annotations</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.carbon.analytics</groupId>
|
||||
<artifactId>org.wso2.carbon.analytics.api</artifactId>
|
||||
@ -177,6 +172,32 @@
|
||||
<warName>android_sense</warName>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<artifactId>androidsense-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -20,6 +20,7 @@ function onRequest(context) {
|
||||
var log = new Log("device-view.js");
|
||||
var deviceType = context.uriParams.deviceType;
|
||||
var deviceId = request.getParameter("id");
|
||||
var owner = request.getParameter("owner");
|
||||
var devicemgtProps = require("/app/modules/conf-reader/main.js")["conf"];
|
||||
var autoCompleteParams = [
|
||||
{"name" : "deviceId", "value" : deviceId}
|
||||
@ -27,7 +28,7 @@ function onRequest(context) {
|
||||
|
||||
if (deviceType != null && deviceType != undefined && deviceId != null && deviceId != undefined) {
|
||||
var deviceModule = require("/app/modules/business-controllers/device.js")["deviceModule"];
|
||||
var device = deviceModule.viewDevice(deviceType, deviceId);
|
||||
var device = deviceModule.viewDevice(deviceType, deviceId, owner);
|
||||
if (device && device.status != "error") {
|
||||
var anchor = { "device" : { "id" : device.content.deviceIdentifier, "type" : device.content.type}};
|
||||
var viewObject = {};
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>device-types</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
<parent>
|
||||
<artifactId>arduino-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
<parent>
|
||||
<artifactId>arduino-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -39,12 +39,6 @@
|
||||
<artifactId>org.wso2.carbon.utils</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||
<artifactId>org.wso2.carbon.apimgt.annotations</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||
<artifactId>org.wso2.carbon.device.mgt.extensions</artifactId>
|
||||
@ -164,6 +158,32 @@
|
||||
<warName>arduino</warName>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
||||
@ -23,7 +23,7 @@
|
||||
<parent>
|
||||
<artifactId>arduino-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -29,7 +29,7 @@
|
||||
</div>
|
||||
|
||||
<div class="wr-input-control wr-btn-grp">
|
||||
<button id="save-general-btn" class="wr-btn" onclick="artifactUpload();">
|
||||
<button id="save-general-btn" class="wr-btn" onclick="arduinoArtifactUpload();">
|
||||
Deploy Analytics Artifacts
|
||||
</button>
|
||||
</div>
|
||||
|
||||
@ -104,7 +104,7 @@ var addConfiguration = function () {
|
||||
);
|
||||
};
|
||||
|
||||
var artifactUpload = function () {
|
||||
var arduinoArtifactUpload = function () {
|
||||
var contentType = "application/json";
|
||||
var backendEndBasePath = "/api/device-mgt/v1.0";
|
||||
var urix = backendEndBasePath + "/admin/publish-artifact/deploy/arduino";
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>device-types</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>carbon-device-mgt-plugins-parent</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
<parent>
|
||||
<artifactId>raspberrypi-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
<parent>
|
||||
<artifactId>raspberrypi-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -96,11 +96,6 @@
|
||||
<artifactId>jsr311-api</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||
<artifactId>org.wso2.carbon.apimgt.annotations</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||
<artifactId>org.wso2.carbon.identity.jwt.client.extension</artifactId>
|
||||
@ -144,6 +139,32 @@
|
||||
<warName>raspberrypi</warName>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
||||
@ -23,7 +23,7 @@
|
||||
<parent>
|
||||
<artifactId>raspberrypi-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -28,7 +28,7 @@
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
<div class="wr-input-control wr-btn-grp">
|
||||
<button id="save-general-btn" class="wr-btn" onclick="artifactUpload();">
|
||||
<button id="save-general-btn" class="wr-btn" onclick="raspberryArtifactUpload();">
|
||||
Deploy Analytics Artifacts
|
||||
</button>
|
||||
|
||||
|
||||
@ -114,7 +114,7 @@ var addConfiguration = function () {
|
||||
);
|
||||
};
|
||||
|
||||
var artifactUpload = function () {
|
||||
var raspberryArtifactUpload = function () {
|
||||
var contentType = "application/json";
|
||||
var backendEndBasePath = "/api/device-mgt/v1.0";
|
||||
var urix = backendEndBasePath + "/admin/publish-artifact/deploy/raspberrypi";
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>device-types</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -23,7 +23,7 @@
|
||||
<parent>
|
||||
<artifactId>virtual-fire-alarm-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
<parent>
|
||||
<artifactId>virtual-fire-alarm-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
<parent>
|
||||
<artifactId>virtual-fire-alarm-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -188,11 +188,6 @@
|
||||
<groupId>commons-codec</groupId>
|
||||
<artifactId>commons-codec</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||
<artifactId>org.wso2.carbon.apimgt.annotations</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.igniterealtime.smack.wso2</groupId>
|
||||
<artifactId>smack</artifactId>
|
||||
@ -245,6 +240,32 @@
|
||||
<warName>virtual_firealarm</warName>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
||||
@ -23,7 +23,7 @@
|
||||
<parent>
|
||||
<artifactId>virtual-fire-alarm-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -29,7 +29,7 @@
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
<div class="wr-input-control wr-btn-grp">
|
||||
<button id="save-general-btn" class="wr-btn" onclick="artifactUpload();">
|
||||
<button id="save-general-btn" class="wr-btn" onclick="virtualfirealarmArtifactUpload();">
|
||||
Deploy Analytics Artifacts
|
||||
</button>
|
||||
|
||||
|
||||
@ -104,7 +104,7 @@ var addConfiguration = function () {
|
||||
);
|
||||
};
|
||||
|
||||
var artifactUpload = function () {
|
||||
var virtualfirealarmArtifactUpload = function () {
|
||||
var contentType = "application/json";
|
||||
var backendEndBasePath = "/api/device-mgt/v1.0";
|
||||
var urix = backendEndBasePath + "/admin/publish-artifact/deploy/virtual_firealarm";
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>device-types</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -18,7 +18,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>appm-connector</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -65,6 +65,32 @@
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
<dependencies>
|
||||
|
||||
@ -18,7 +18,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>appm-connector</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -83,6 +83,32 @@
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>extensions</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -20,7 +20,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>cdmf-transport-adapters</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
@ -76,6 +76,32 @@
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
||||
@ -20,7 +20,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>cdmf-transport-adapters</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -176,6 +176,32 @@
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
||||
@ -20,7 +20,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>cdmf-transport-adapters</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
@ -153,6 +153,32 @@
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
||||
@ -84,10 +84,10 @@ public class MQTTEventAdapterFactory extends InputEventAdapterFactory {
|
||||
|
||||
//Broker Password
|
||||
Property password = new Property(MQTTEventAdapterConstants.ADAPTER_CONF_PASSWORD);
|
||||
userName.setDisplayName(
|
||||
password.setDisplayName(
|
||||
resourceBundle.getString(MQTTEventAdapterConstants.ADAPTER_CONF_PASSWORD));
|
||||
userName.setRequired(false);
|
||||
userName.setHint(resourceBundle.getString(MQTTEventAdapterConstants.ADAPTER_CONF_PASSWORD_HINT));
|
||||
password.setRequired(false);
|
||||
password.setHint(resourceBundle.getString(MQTTEventAdapterConstants.ADAPTER_CONF_PASSWORD_HINT));
|
||||
propertyList.add(password);
|
||||
|
||||
//Broker Required Scopes.
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>cdmf-transport-adapters</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -125,6 +125,32 @@
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
||||
@ -20,7 +20,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>cdmf-transport-adapters</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
@ -129,6 +129,32 @@
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
||||
@ -20,7 +20,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>cdmf-transport-adapters</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
@ -136,6 +136,32 @@
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>cdmf-transport-adapters</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -59,5 +59,33 @@
|
||||
|
||||
<build>
|
||||
<finalName>secured-websocket</finalName>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>cdmf-transport-adapters</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -185,6 +185,32 @@
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
|
||||
@ -104,7 +104,7 @@ public class DeviceAuthorizer implements Authorizer {
|
||||
List<DeviceIdentifier> devices = deviceAuthorizationResult.getAuthorizedDevices();
|
||||
if (devices != null && devices.size() > 0) {
|
||||
DeviceIdentifier authorizedDevice = devices.get(0);
|
||||
if (authorizedDevice.getId().equals(deviceId) && authorizedDevice.getType().equals(deviceType)) {
|
||||
if (authorizedDevice.getId().equals(deviceId) && authorizedDevice.getType().equalsIgnoreCase(deviceType)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@ -20,7 +20,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>cdmf-transport-adapters</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -103,6 +103,32 @@
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>extensions</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -0,0 +1,332 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
~ Copyright (c) 2005-2014, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
~
|
||||
~ WSO2 Inc. 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.
|
||||
-->
|
||||
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>mb-extensions</artifactId>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>org.wso2.carbon.andes.extensions.device.mgt.api</artifactId>
|
||||
<packaging>war</packaging>
|
||||
<name>WSO2 Carbon - MQTT Topics Management API</name>
|
||||
<description>WSO2 Carbon - MQTT Topics Management API</description>
|
||||
<url>http://wso2.org</url>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<configuration>
|
||||
<source>1.7</source>
|
||||
<target>1.7</target>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<artifactId>maven-war-plugin</artifactId>
|
||||
<configuration>
|
||||
<packagingExcludes>WEB-INF/lib/*cxf*.jar</packagingExcludes>
|
||||
<warName>api#mqtt-topics#v1.0</warName>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
<profiles>
|
||||
<profile>
|
||||
<id>deploy</id>
|
||||
<build>
|
||||
<defaultGoal>compile</defaultGoal>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-antrun-plugin</artifactId>
|
||||
<version>1.7</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<phase>compile</phase>
|
||||
<goals>
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<tasks>
|
||||
<copy todir="${basedir}/../../../repository/deployment/server/webapps" overwrite="true">
|
||||
<fileset dir="${basedir}/target">
|
||||
<include name="api#mqtt-topics#v1.0" />
|
||||
</fileset>
|
||||
</copy>
|
||||
</tasks>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
<profile>
|
||||
<id>client</id>
|
||||
<build>
|
||||
<defaultGoal>test</defaultGoal>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>exec-maven-plugin</artifactId>
|
||||
<version>1.2.1</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>java</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
</profiles>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-frontend-jaxws</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-frontend-jaxrs</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-transports-http</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-httpclient.wso2</groupId>
|
||||
<artifactId>commons-httpclient</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.ws.rs</groupId>
|
||||
<artifactId>jsr311-api</artifactId>
|
||||
<!--<scope>provided</scope>-->
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.carbon</groupId>
|
||||
<artifactId>org.wso2.carbon.utils</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.carbon</groupId>
|
||||
<artifactId>org.wso2.carbon.logging</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||
<artifactId>org.wso2.carbon.device.mgt.common</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||
<artifactId>org.wso2.carbon.device.mgt.core</artifactId>
|
||||
<scope>provided</scope>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>org.apache.axis2.wso2</groupId>
|
||||
<artifactId>axis2</artifactId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<groupId>org.apache.axis2.transport</groupId>
|
||||
<artifactId>axis2-transport-mail</artifactId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<groupId>org.apache.ws.commons.axiom.wso2</groupId>
|
||||
<artifactId>axiom</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||
<artifactId>org.wso2.carbon.policy.mgt.core</artifactId>
|
||||
<scope>provided</scope>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>org.apache.axis2.wso2</groupId>
|
||||
<artifactId>axis2-client</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.carbon.identity.inbound.auth.oauth2</groupId>
|
||||
<artifactId>org.wso2.carbon.identity.oauth.stub</artifactId>
|
||||
<scope>provided</scope>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>org.apache.axis2.wso2</groupId>
|
||||
<artifactId>axis2</artifactId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<groupId>org.apache.axis2.wso2</groupId>
|
||||
<artifactId>axis2-client</artifactId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<groupId>org.apache.axis2.transport</groupId>
|
||||
<artifactId>axis2-transport-mail</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.json.wso2</groupId>
|
||||
<artifactId>json</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||
<artifactId>org.wso2.carbon.certificate.mgt.core</artifactId>
|
||||
<scope>provided</scope>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>org.apache.axis2.wso2</groupId>
|
||||
<artifactId>axis2</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.swagger</groupId>
|
||||
<artifactId>swagger-annotations</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.swagger</groupId>
|
||||
<artifactId>swagger-core</artifactId>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>com.fasterxml.jackson.module</groupId>
|
||||
<artifactId>jackson-module-jaxb-annotations</artifactId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<groupId>org.wso2.orbit.com.fasterxml.jackson.core</groupId>
|
||||
<artifactId>jackson-core</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.swagger</groupId>
|
||||
<artifactId>swagger-jaxrs</artifactId>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>com.fasterxml.jackson.module</groupId>
|
||||
<artifactId>jackson-module-jaxb-annotations</artifactId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<groupId>org.wso2.orbit.com.fasterxml.jackson.core</groupId>
|
||||
<artifactId>jackson-core</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.servlet</groupId>
|
||||
<artifactId>servlet-api</artifactId>
|
||||
<!--<scope>provided</scope>-->
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||
<artifactId>org.wso2.carbon.apimgt.annotations</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.orbit.com.fasterxml.jackson.core</groupId>
|
||||
<artifactId>jackson-annotations</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.hibernate</groupId>
|
||||
<artifactId>hibernate-validator</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.ws.rs</groupId>
|
||||
<artifactId>javax.ws.rs-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.carbon.messaging</groupId>
|
||||
<artifactId>org.wso2.carbon.andes.mqtt.stub</artifactId>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>org.apache.axis2.wso2</groupId>
|
||||
<artifactId>axis2</artifactId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<groupId>org.apache.axis2.wso2</groupId>
|
||||
<artifactId>axis2-client</artifactId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<groupId>org.apache.axis2.transport</groupId>
|
||||
<artifactId>axis2-transport-mail</artifactId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<groupId>org.apache.ws.commons.axiom.wso2</groupId>
|
||||
<artifactId>axiom</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
</project>
|
||||
@ -0,0 +1,44 @@
|
||||
/*
|
||||
* Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*
|
||||
*/
|
||||
package org.wso2.carbon.andes.extensions.device.mgt.jaxrs;
|
||||
|
||||
import javax.servlet.*;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
|
||||
public class ApiOriginFilter implements Filter {
|
||||
|
||||
public void doFilter(ServletRequest request, ServletResponse response,
|
||||
FilterChain chain) throws IOException, ServletException {
|
||||
HttpServletResponse res = (HttpServletResponse) response;
|
||||
res.addHeader("Access-Control-Allow-Origin", "*");
|
||||
res.addHeader("Access-Control-Allow-Methods", "GET, POST, DELETE, PUT");
|
||||
res.addHeader("Access-Control-Allow-Headers", "Content-Type");
|
||||
chain.doFilter(request, response);
|
||||
}
|
||||
|
||||
public void destroy() {
|
||||
//do nothing
|
||||
}
|
||||
|
||||
public void init(FilterConfig filterConfig) throws ServletException {
|
||||
//do nothing
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,42 @@
|
||||
/*
|
||||
* Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*
|
||||
*/
|
||||
package org.wso2.carbon.andes.extensions.device.mgt.jaxrs.beans;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
|
||||
public class BasePaginatedResult {
|
||||
|
||||
/**
|
||||
* Number of Resources returned.
|
||||
*/
|
||||
@ApiModelProperty(
|
||||
value = "Number of total resources.",
|
||||
example = "1")
|
||||
@JsonProperty("count")
|
||||
private long count;
|
||||
|
||||
public long getCount() {
|
||||
return count;
|
||||
}
|
||||
|
||||
public void setCount(long count) {
|
||||
this.count = count;
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,77 @@
|
||||
/*
|
||||
* Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*
|
||||
*/
|
||||
package org.wso2.carbon.andes.extensions.device.mgt.jaxrs.beans;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@ApiModel(description = "")
|
||||
public class ErrorListItem {
|
||||
|
||||
@NotNull
|
||||
private String code = null;
|
||||
@NotNull
|
||||
private String message = null;
|
||||
|
||||
@ApiModelProperty(required = true, value = "")
|
||||
@JsonProperty("code")
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
public void setCode(String code) {
|
||||
this.code = code;
|
||||
}
|
||||
|
||||
public ErrorListItem() {}
|
||||
|
||||
public ErrorListItem(String code, String msg) {
|
||||
this.code = code;
|
||||
this.message = msg;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Description about individual errors occurred
|
||||
**/
|
||||
@ApiModelProperty(required = true, value = "Description about individual errors occurred")
|
||||
@JsonProperty("message")
|
||||
public String getMessage() {
|
||||
return message;
|
||||
}
|
||||
public void setMessage(String message) {
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append("errorItem {\n");
|
||||
|
||||
sb.append(" code: ").append(code).append("\n");
|
||||
sb.append(" message: ").append(message).append("\n");
|
||||
sb.append("}\n");
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,193 @@
|
||||
/*
|
||||
* Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*
|
||||
*/
|
||||
package org.wso2.carbon.andes.extensions.device.mgt.jaxrs.beans;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@ApiModel(description = "")
|
||||
public class ErrorResponse {
|
||||
|
||||
private Long code = null;
|
||||
private String message = null;
|
||||
private String description = null;
|
||||
private String moreInfo = null;
|
||||
private List<ErrorListItem> errorItems = new ArrayList<>();
|
||||
|
||||
public ErrorResponse() {
|
||||
}
|
||||
|
||||
@JsonProperty(value = "code")
|
||||
@ApiModelProperty(required = true, value = "")
|
||||
public Long getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
public void setCode(Long code) {
|
||||
this.code = code;
|
||||
}
|
||||
|
||||
@JsonProperty(value = "message")
|
||||
@ApiModelProperty(required = true, value = "ErrorResponse message.")
|
||||
public String getMessage() {
|
||||
return message;
|
||||
}
|
||||
|
||||
public void setMessage(String message) {
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
@JsonProperty(value = "description")
|
||||
@ApiModelProperty(value = "A detail description about the error message.")
|
||||
public String getDescription() {
|
||||
return description;
|
||||
}
|
||||
|
||||
public void setDescription(String description) {
|
||||
this.description = description;
|
||||
}
|
||||
|
||||
@JsonProperty(value = "moreInfo")
|
||||
@ApiModelProperty(value = "Preferably an url with more details about the error.")
|
||||
public String getMoreInfo() {
|
||||
return moreInfo;
|
||||
}
|
||||
|
||||
public void setMoreInfo(String moreInfo) {
|
||||
this.moreInfo = moreInfo;
|
||||
}
|
||||
|
||||
public void addErrorListItem(ErrorListItem item) {
|
||||
this.errorItems.add(item);
|
||||
}
|
||||
|
||||
/**
|
||||
* If there are more than one error list them out. \nFor example, list out validation errors by each field.
|
||||
*/
|
||||
@JsonProperty(value = "errorItems")
|
||||
@ApiModelProperty(value = "If there are more than one error list them out. \n" +
|
||||
"For example, list out validation errors by each field.")
|
||||
public List<ErrorListItem> getErrorItems() {
|
||||
return errorItems;
|
||||
}
|
||||
|
||||
public void setErrorItems(List<ErrorListItem> error) {
|
||||
this.errorItems = error;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
// StringBuilder sb = new StringBuilder();
|
||||
// sb.append("{");
|
||||
// boolean cont = false;
|
||||
// if (code != null) {
|
||||
// cont = true;
|
||||
// sb.append(" \"code\": ").append(code);
|
||||
// }
|
||||
// if (message != null) {
|
||||
// if (cont) {
|
||||
// sb.append(",");
|
||||
// }
|
||||
// cont = true;
|
||||
// sb.append(" \"message\": \"").append(message).append("\"");
|
||||
// }
|
||||
// if (description != null) {
|
||||
// if (cont) {
|
||||
// sb.append(",");
|
||||
// }
|
||||
// cont = true;
|
||||
// sb.append(" \"description\": ").append(description).append("\"");
|
||||
// }
|
||||
// if (moreInfo != null) {
|
||||
// if (cont) {
|
||||
// sb.append(",");
|
||||
// }
|
||||
// cont = true;
|
||||
// sb.append(" \"moreInfo\": \"").append(moreInfo).append("\"");
|
||||
// }
|
||||
// if (error != null && error.size() > 0) {
|
||||
// if (cont) {
|
||||
// sb.append(",");
|
||||
// }
|
||||
// sb.append(" \"errorItems\": ").append(error);
|
||||
// }
|
||||
// sb.append("}");
|
||||
// return sb.toString();
|
||||
return null;
|
||||
}
|
||||
|
||||
public static class ErrorResponseBuilder {
|
||||
|
||||
private Long code = null;
|
||||
private String message = null;
|
||||
private String description = null;
|
||||
private String moreInfo = null;
|
||||
private List<ErrorListItem> error;
|
||||
|
||||
|
||||
public ErrorResponseBuilder() {
|
||||
this.error = new ArrayList<>();
|
||||
}
|
||||
|
||||
public ErrorResponseBuilder setCode(long code) {
|
||||
this.code = code;
|
||||
return this;
|
||||
}
|
||||
|
||||
public ErrorResponseBuilder setMessage(String message) {
|
||||
this.message = message;
|
||||
return this;
|
||||
}
|
||||
|
||||
public ErrorResponseBuilder setDescription(String description) {
|
||||
this.description = description;
|
||||
return this;
|
||||
}
|
||||
|
||||
public ErrorResponseBuilder setMoreInfo(String moreInfo) {
|
||||
this.moreInfo = moreInfo;
|
||||
return this;
|
||||
}
|
||||
|
||||
public ErrorResponseBuilder addErrorItem(String code, String msg) {
|
||||
ErrorListItem item = new ErrorListItem();
|
||||
item.setCode(code);
|
||||
item.setMessage(msg);
|
||||
this.error.add(item);
|
||||
return this;
|
||||
}
|
||||
|
||||
public ErrorResponse build() {
|
||||
ErrorResponse errorResponse = new ErrorResponse();
|
||||
errorResponse.setCode(code);
|
||||
errorResponse.setMessage(message);
|
||||
errorResponse.setErrorItems(error);
|
||||
errorResponse.setDescription(description);
|
||||
errorResponse.setMoreInfo(moreInfo);
|
||||
return errorResponse;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -0,0 +1,55 @@
|
||||
/*
|
||||
* Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*
|
||||
*/
|
||||
package org.wso2.carbon.andes.extensions.device.mgt.jaxrs.beans;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import org.wso2.carbon.andes.core.types.xsd.MQTTSubscription;
|
||||
import org.wso2.carbon.andes.core.types.xsd.Subscription;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class SubscriptionList extends BasePaginatedResult {
|
||||
|
||||
private List<Subscription> subscriptions = new ArrayList<>();
|
||||
|
||||
@ApiModelProperty(value = "List of subscriptions returned")
|
||||
@JsonProperty("subscriptions")
|
||||
public List<Subscription> getList() {
|
||||
return subscriptions;
|
||||
}
|
||||
|
||||
public void setList(List<Subscription> subscriptions) {
|
||||
this.subscriptions = subscriptions;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append("{\n");
|
||||
|
||||
sb.append(" count: ").append(getCount()).append(",\n");
|
||||
sb.append(" subscriptions: [").append(subscriptions).append("\n");
|
||||
sb.append("]}\n");
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,114 @@
|
||||
/*
|
||||
* Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*/
|
||||
|
||||
package org.wso2.carbon.andes.extensions.device.mgt.jaxrs.beans;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* This class holds required parameters for a querying a paginated device response.
|
||||
*/
|
||||
public class TopicPaginationRequest {
|
||||
|
||||
private int startIndex;
|
||||
private int rowCount;
|
||||
private Date since;
|
||||
private String topic_name;
|
||||
private int remaining_messages;
|
||||
private String active;
|
||||
private String durable;
|
||||
private String subscriber_name;
|
||||
private String identifier;
|
||||
|
||||
public TopicPaginationRequest(int start, int rowCount) {
|
||||
this.startIndex = start;
|
||||
this.rowCount = rowCount;
|
||||
}
|
||||
|
||||
public int getStartIndex() {
|
||||
return startIndex;
|
||||
}
|
||||
|
||||
public void setStartIndex(int startIndex) {
|
||||
this.startIndex = startIndex;
|
||||
}
|
||||
|
||||
public int getRowCount() {
|
||||
return rowCount;
|
||||
}
|
||||
|
||||
public void setRowCount(int rowCount) {
|
||||
this.rowCount = rowCount;
|
||||
}
|
||||
|
||||
public Date getSince() {
|
||||
return since;
|
||||
}
|
||||
|
||||
public void setSince(Date since) {
|
||||
this.since = since;
|
||||
}
|
||||
|
||||
public String getTopic_name() {
|
||||
return topic_name;
|
||||
}
|
||||
|
||||
public void setTopic_name(String topic_name) {
|
||||
this.topic_name = topic_name;
|
||||
}
|
||||
|
||||
public int getRemaining_messages() {
|
||||
return remaining_messages;
|
||||
}
|
||||
|
||||
public void setRemaining_messages(int remaining_messages) {
|
||||
this.remaining_messages = remaining_messages;
|
||||
}
|
||||
|
||||
public String getActive() {
|
||||
return active;
|
||||
}
|
||||
|
||||
public void setActive(String active) {
|
||||
this.active = active;
|
||||
}
|
||||
|
||||
public String getDurable() {
|
||||
return durable;
|
||||
}
|
||||
|
||||
public void setDurable(String durable) {
|
||||
this.durable = durable;
|
||||
}
|
||||
|
||||
public String getSubscriber_name() {
|
||||
return subscriber_name;
|
||||
}
|
||||
|
||||
public void setSubscriber_name(String subscriber_name) {
|
||||
this.subscriber_name = subscriber_name;
|
||||
}
|
||||
|
||||
public String getIdentifier() {
|
||||
return identifier;
|
||||
}
|
||||
|
||||
public void setIdentifier(String identifier) {
|
||||
this.identifier = identifier;
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,91 @@
|
||||
/*
|
||||
* Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*/
|
||||
|
||||
package org.wso2.carbon.andes.extensions.device.mgt.jaxrs.common;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.GsonBuilder;
|
||||
|
||||
import javax.ws.rs.Consumes;
|
||||
import javax.ws.rs.Produces;
|
||||
import javax.ws.rs.WebApplicationException;
|
||||
import javax.ws.rs.core.MediaType;
|
||||
import javax.ws.rs.core.MultivaluedMap;
|
||||
import javax.ws.rs.ext.MessageBodyReader;
|
||||
import javax.ws.rs.ext.MessageBodyWriter;
|
||||
import javax.ws.rs.ext.Provider;
|
||||
import java.io.*;
|
||||
import java.lang.annotation.Annotation;
|
||||
import java.lang.reflect.Type;
|
||||
|
||||
import static javax.ws.rs.core.MediaType.APPLICATION_JSON;
|
||||
|
||||
@Provider
|
||||
@Produces(APPLICATION_JSON)
|
||||
@Consumes(APPLICATION_JSON)
|
||||
public class GsonMessageBodyHandler implements MessageBodyWriter<Object>, MessageBodyReader<Object> {
|
||||
|
||||
public static final String DATE_FORMAT = "EEE, d MMM yyyy HH:mm:ss Z";
|
||||
private Gson gson;
|
||||
private static final String UTF_8 = "UTF-8";
|
||||
|
||||
public boolean isReadable(Class<?> aClass, Type type, Annotation[] annotations, MediaType mediaType) {
|
||||
return true;
|
||||
}
|
||||
|
||||
private Gson getGson() {
|
||||
if (gson == null) {
|
||||
final GsonBuilder gsonBuilder = new GsonBuilder();
|
||||
gson = gsonBuilder.setDateFormat(DATE_FORMAT).create();
|
||||
}
|
||||
return gson;
|
||||
}
|
||||
|
||||
public Object readFrom(Class<Object> objectClass, Type type, Annotation[] annotations, MediaType mediaType,
|
||||
MultivaluedMap<String, String> stringStringMultivaluedMap, InputStream entityStream)
|
||||
throws IOException, WebApplicationException {
|
||||
|
||||
InputStreamReader reader = new InputStreamReader(entityStream, "UTF-8");
|
||||
|
||||
try {
|
||||
return getGson().fromJson(reader, type);
|
||||
} finally {
|
||||
reader.close();
|
||||
}
|
||||
}
|
||||
|
||||
public boolean isWriteable(Class<?> aClass, Type type, Annotation[] annotations, MediaType mediaType) {
|
||||
return true;
|
||||
}
|
||||
|
||||
public long getSize(Object o, Class<?> aClass, Type type, Annotation[] annotations, MediaType mediaType) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
public void writeTo(Object object, Class<?> aClass, Type type, Annotation[] annotations, MediaType mediaType,
|
||||
MultivaluedMap<String, Object> stringObjectMultivaluedMap, OutputStream entityStream)
|
||||
throws IOException, WebApplicationException {
|
||||
|
||||
OutputStreamWriter writer = new OutputStreamWriter(entityStream, UTF_8);
|
||||
try {
|
||||
getGson().toJson(object, type, writer);
|
||||
} finally {
|
||||
writer.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,49 @@
|
||||
/*
|
||||
* Copyright (c) 2014, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*/
|
||||
package org.wso2.carbon.andes.extensions.device.mgt.jaxrs.config;
|
||||
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
/**
|
||||
* Configurations related to MQTT Stub.
|
||||
*/
|
||||
@XmlRootElement(name = "MQTTConfiguration")
|
||||
public class MQTTStubConfigurations {
|
||||
private String adminUsername;
|
||||
private String adminPassword;
|
||||
|
||||
@XmlElement(name = "AdminUsername", required = true)
|
||||
public String getAdminUsername() {
|
||||
return adminUsername;
|
||||
}
|
||||
|
||||
public void setAdminUsername(String adminUsername) {
|
||||
this.adminUsername = adminUsername;
|
||||
}
|
||||
|
||||
@XmlElement(name = "AdminPassword", required = true)
|
||||
public String getAdminPassword() {
|
||||
return adminPassword;
|
||||
}
|
||||
|
||||
public void setAdminPassword(String adminPassword) {
|
||||
this.adminPassword = adminPassword;
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,74 @@
|
||||
/*
|
||||
* Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*
|
||||
*/
|
||||
package org.wso2.carbon.andes.extensions.device.mgt.jaxrs.exception;
|
||||
|
||||
public class AuthenticationException extends Exception {
|
||||
|
||||
private static final long serialVersionUID = -3151279311929070297L;
|
||||
|
||||
private String errorMessage;
|
||||
private int errorCode;
|
||||
|
||||
public AuthenticationException(int errorCode, String message) {
|
||||
super(message);
|
||||
this.errorCode = errorCode;
|
||||
}
|
||||
|
||||
public AuthenticationException(int errorCode, String message, Throwable cause) {
|
||||
super(message, cause);
|
||||
this.errorCode = errorCode;
|
||||
}
|
||||
|
||||
public int getErrorCode() {
|
||||
return errorCode;
|
||||
}
|
||||
|
||||
|
||||
public String getErrorMessage() {
|
||||
return errorMessage;
|
||||
}
|
||||
|
||||
public void setErrorMessage(String errorMessage) {
|
||||
this.errorMessage = errorMessage;
|
||||
}
|
||||
|
||||
public AuthenticationException(String msg, Exception nestedEx) {
|
||||
super(msg, nestedEx);
|
||||
setErrorMessage(msg);
|
||||
}
|
||||
|
||||
public AuthenticationException(String message, Throwable cause) {
|
||||
super(message, cause);
|
||||
setErrorMessage(message);
|
||||
}
|
||||
|
||||
public AuthenticationException(String msg) {
|
||||
super(msg);
|
||||
setErrorMessage(msg);
|
||||
}
|
||||
|
||||
public AuthenticationException() {
|
||||
super();
|
||||
}
|
||||
|
||||
public AuthenticationException(Throwable cause) {
|
||||
super(cause);
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,59 @@
|
||||
/*
|
||||
* Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*
|
||||
*/
|
||||
package org.wso2.carbon.andes.extensions.device.mgt.jaxrs.exception;
|
||||
|
||||
/**
|
||||
* This class is used to handle MQTT configuration related exceptions
|
||||
*/
|
||||
public class MQTTConfigurationException extends Exception {
|
||||
|
||||
private static final long serialVersionUID = -3151279311929070288L;
|
||||
private String errorMessage;
|
||||
|
||||
public String getErrorMessage() {
|
||||
return errorMessage;
|
||||
}
|
||||
|
||||
public void setErrorMessage(String errorMessage) {
|
||||
this.errorMessage = errorMessage;
|
||||
setErrorMessage(errorMessage);
|
||||
}
|
||||
|
||||
public MQTTConfigurationException(String errorMessage) {
|
||||
super(errorMessage);
|
||||
}
|
||||
|
||||
public MQTTConfigurationException(String msg, Exception nestedEx) {
|
||||
super(msg, nestedEx);
|
||||
setErrorMessage(msg);
|
||||
}
|
||||
|
||||
public MQTTConfigurationException(String message, Throwable cause) {
|
||||
super(message, cause);
|
||||
setErrorMessage(message);
|
||||
}
|
||||
|
||||
public MQTTConfigurationException() {
|
||||
super();
|
||||
}
|
||||
|
||||
public MQTTConfigurationException(Throwable cause) {
|
||||
super(cause);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,44 @@
|
||||
/*
|
||||
* Copyright (c) 2014, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*/
|
||||
package org.wso2.carbon.andes.extensions.device.mgt.jaxrs.exception;
|
||||
|
||||
public class TopicManagementException extends Exception {
|
||||
|
||||
private static final long serialVersionUID = -3151279311929070297L;
|
||||
|
||||
public TopicManagementException(String msg, Exception nestedEx) {
|
||||
super(msg, nestedEx);
|
||||
}
|
||||
|
||||
public TopicManagementException(String message, Throwable cause) {
|
||||
super(message, cause);
|
||||
}
|
||||
|
||||
public TopicManagementException(String msg) {
|
||||
super(msg);
|
||||
}
|
||||
|
||||
public TopicManagementException() {
|
||||
super();
|
||||
}
|
||||
|
||||
public TopicManagementException(Throwable cause) {
|
||||
super(cause);
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,150 @@
|
||||
/*
|
||||
* Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*
|
||||
*/
|
||||
package org.wso2.carbon.andes.extensions.device.mgt.jaxrs.service;
|
||||
|
||||
import io.swagger.annotations.SwaggerDefinition;
|
||||
import io.swagger.annotations.Info;
|
||||
import io.swagger.annotations.ExtensionProperty;
|
||||
import io.swagger.annotations.Extension;
|
||||
import io.swagger.annotations.Tag;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import io.swagger.annotations.ApiParam;
|
||||
import io.swagger.annotations.ApiResponse;
|
||||
import io.swagger.annotations.ApiResponses;
|
||||
import io.swagger.annotations.ResponseHeader;
|
||||
import org.wso2.carbon.andes.extensions.device.mgt.jaxrs.beans.ErrorResponse;
|
||||
import org.wso2.carbon.apimgt.annotations.api.Scope;
|
||||
import org.wso2.carbon.apimgt.annotations.api.Scopes;
|
||||
import org.wso2.carbon.device.mgt.common.Device;
|
||||
import org.wso2.carbon.andes.extensions.device.mgt.jaxrs.util.Constants;
|
||||
import javax.ws.rs.*;
|
||||
import javax.ws.rs.core.MediaType;
|
||||
import javax.ws.rs.core.Response;
|
||||
|
||||
@SwaggerDefinition(
|
||||
info = @Info(
|
||||
version = "1.0.0",
|
||||
title = "",
|
||||
extensions = {
|
||||
@Extension(properties = {
|
||||
@ExtensionProperty(name = "name", value = "MQTTManagementAdmin"),
|
||||
@ExtensionProperty(name = "context", value = "/api/mqtt-topics/v1.0/admin/topics"),
|
||||
})
|
||||
}
|
||||
),
|
||||
tags = {
|
||||
@Tag(name = "device_management", description = "")
|
||||
}
|
||||
)
|
||||
@Path("/admin/topics")
|
||||
@Api(value = "MQTT Management Administrative Service", description = "This an API intended to be used by " +
|
||||
"'internal' components to log in as an admin user and view MQTT topics dashboard. " +
|
||||
"Further, this is strictly restricted to admin users only ")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
@Consumes(MediaType.APPLICATION_JSON)
|
||||
@Scopes(
|
||||
scopes = {
|
||||
@Scope(
|
||||
name = "Getting Details of Topics",
|
||||
description = "Getting Details of Topics",
|
||||
key = "perm:admin:topics:view",
|
||||
permissions = {"/device-mgt/topics/view"}
|
||||
)
|
||||
}
|
||||
)
|
||||
public interface MQTTManagementAdminService {
|
||||
|
||||
@GET
|
||||
@ApiOperation(
|
||||
produces = MediaType.APPLICATION_JSON,
|
||||
httpMethod = "GET",
|
||||
value = "Getting Details of Topics",
|
||||
notes = "Get the details of a topic by searching via the topic name, and details.",
|
||||
response = Device.class,
|
||||
responseContainer = "List",
|
||||
tags = "MQTT Management Administrative Service",
|
||||
extensions = {
|
||||
@Extension(properties = {
|
||||
@ExtensionProperty(name = Constants.SCOPE, value = "perm:admin:topics:view")
|
||||
})
|
||||
}
|
||||
)
|
||||
@ApiResponses(value = {
|
||||
@ApiResponse(code = 200, message = "OK. \n Successfully fetched the list of topics.",
|
||||
response = Device.class,
|
||||
responseContainer = "List",
|
||||
responseHeaders = {
|
||||
@ResponseHeader(
|
||||
name = "Content-Type",
|
||||
description = "The content type of the body"),
|
||||
@ResponseHeader(
|
||||
name = "ETag",
|
||||
description = "Entity Tag of the response resource.\n" +
|
||||
"Used by caches, or in conditional requests."),
|
||||
@ResponseHeader(
|
||||
name = "Last-Modified",
|
||||
description = "Date and time the resource was last modified.\n" +
|
||||
"Used by caches, or in conditional requests."),
|
||||
}),
|
||||
@ApiResponse(
|
||||
code = 304,
|
||||
message = "Not Modified. Empty body because the client already has the latest version of the " +
|
||||
"requested resource.\n"),
|
||||
@ApiResponse(
|
||||
code = 401,
|
||||
message = "Unauthorized.\n The unauthorized access to the requested resource.",
|
||||
response = ErrorResponse.class),
|
||||
@ApiResponse(
|
||||
code = 404,
|
||||
message = "Not Found.\n The specified topic does not exist",
|
||||
response = ErrorResponse.class),
|
||||
@ApiResponse(
|
||||
code = 406,
|
||||
message = "Not Acceptable.\n The requested media type is not supported"),
|
||||
@ApiResponse(
|
||||
code = 500,
|
||||
message = "Internal Server Error. \n Server error occurred while fetching the topic list.",
|
||||
response = ErrorResponse.class)
|
||||
})
|
||||
Response getFilteredSubscriptions(
|
||||
|
||||
@QueryParam("topic_name") String topic_name,
|
||||
@QueryParam("active") String active,
|
||||
@QueryParam("durable") String durable,
|
||||
@ApiParam(
|
||||
name = "If-Modified-Since",
|
||||
value = "Checks if the requested variant was modified, since the specified date-time. \n" +
|
||||
"Provide the value in the following format: EEE, d MMM yyyy HH:mm:ss Z. \n" +
|
||||
"Example: Mon, 05 Jan 2014 15:10:00 +0200",
|
||||
required = false)
|
||||
@HeaderParam("If-Modified-Since") String ifModifiedSince,
|
||||
@ApiParam(
|
||||
name = "offset",
|
||||
value = "The starting pagination index for the complete list of qualified items.",
|
||||
required = false,
|
||||
defaultValue = "0")
|
||||
@QueryParam("offset") int offset,
|
||||
@ApiParam(
|
||||
name = "limit",
|
||||
value = "Provide how many activity details you require from the starting pagination index/offset.",
|
||||
required = false,
|
||||
defaultValue = "5")
|
||||
@QueryParam("limit") int limit);
|
||||
}
|
||||
@ -0,0 +1,153 @@
|
||||
/*
|
||||
* Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*
|
||||
*/
|
||||
package org.wso2.carbon.andes.extensions.device.mgt.jaxrs.service.impl;
|
||||
|
||||
import org.apache.axis2.AxisFault;
|
||||
import org.apache.axis2.context.ConfigurationContext;
|
||||
import org.apache.axis2.transport.http.HTTPConstants;
|
||||
import org.apache.axis2.transport.http.HttpTransportProperties;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.wso2.carbon.CarbonConstants;
|
||||
import org.wso2.carbon.andes.core.types.xsd.MQTTSubscription;
|
||||
import org.wso2.carbon.andes.core.types.xsd.Subscription;
|
||||
import org.wso2.carbon.andes.extensions.device.mgt.jaxrs.beans.ErrorResponse;
|
||||
import org.wso2.carbon.andes.extensions.device.mgt.jaxrs.beans.SubscriptionList;
|
||||
import org.wso2.carbon.andes.extensions.device.mgt.jaxrs.exception.MQTTConfigurationException;
|
||||
import org.wso2.carbon.andes.extensions.device.mgt.jaxrs.service.MQTTManagementAdminService;
|
||||
import org.wso2.carbon.andes.extensions.device.mgt.jaxrs.util.MQTTMgtAPIUtils;
|
||||
import org.wso2.carbon.andes.extensions.device.mgt.jaxrs.util.RequestValidationUtil;
|
||||
import org.wso2.carbon.andes.mqtt.stub.AndesMQTTAdminServiceBrokerManagerAdminException;
|
||||
import org.wso2.carbon.andes.mqtt.stub.AndesMQTTAdminServiceStub;
|
||||
import org.wso2.carbon.context.CarbonContext;
|
||||
import org.wso2.carbon.user.api.UserStoreException;
|
||||
|
||||
import javax.servlet.ServletConfig;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.ws.rs.*;
|
||||
import javax.ws.rs.core.Context;
|
||||
import javax.ws.rs.core.MediaType;
|
||||
import javax.ws.rs.core.Response;
|
||||
import java.rmi.RemoteException;
|
||||
import java.util.*;
|
||||
|
||||
@Path("/admin/topics")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
@Consumes(MediaType.APPLICATION_JSON)
|
||||
public class MQTTManagementAdminServiceImpl implements MQTTManagementAdminService {
|
||||
|
||||
private static final Log log = LogFactory.getLog(MQTTManagementAdminServiceImpl.class);
|
||||
private static final String PROTOCOL_TYPE = "MQTT";
|
||||
private static final String DESTINATION_TYPE = "TOPIC";
|
||||
private
|
||||
@Context
|
||||
ServletConfig config;
|
||||
private
|
||||
@Context
|
||||
HttpServletRequest request;
|
||||
|
||||
@Override
|
||||
@GET
|
||||
public Response getFilteredSubscriptions(
|
||||
@QueryParam("name") String topic_name,
|
||||
@QueryParam("active") String active,
|
||||
@QueryParam("durable") String durable,
|
||||
@HeaderParam("If-Modified-Since") String ifModifiedSince,
|
||||
@QueryParam("offset") int offset,
|
||||
@QueryParam("limit") int limit) {
|
||||
try {
|
||||
|
||||
String tenantDomain = CarbonContext.getThreadLocalCarbonContext().getTenantDomain();
|
||||
RequestValidationUtil.validatePaginationParameters(offset, limit);
|
||||
AndesMQTTAdminServiceStub andesAdminStub = getAndesMQTTAdminServiceStub(config);
|
||||
MQTTSubscription mqttSubscription = new MQTTSubscription();
|
||||
mqttSubscription.setFilteredNamePattern("");
|
||||
mqttSubscription.setDurable(false);
|
||||
mqttSubscription.setActive(true);
|
||||
mqttSubscription.setProtocolType(PROTOCOL_TYPE);
|
||||
mqttSubscription.setDestinationType(DESTINATION_TYPE);
|
||||
mqttSubscription.setFilteredNameByExactMatch(false);
|
||||
mqttSubscription.setIdentifierPattern("");
|
||||
mqttSubscription.setIdentifierPatternByExactMatch(false);
|
||||
mqttSubscription.setOwnNodeId("All");
|
||||
mqttSubscription.setPageNumber(offset);
|
||||
mqttSubscription.setSubscriptionCountPerPage(limit);
|
||||
|
||||
if (topic_name != null && !topic_name.isEmpty()) {
|
||||
mqttSubscription.setFilteredNamePattern(topic_name);
|
||||
}
|
||||
if (active != null && !active.isEmpty()) {
|
||||
mqttSubscription.setActive(Boolean.parseBoolean(active));
|
||||
}
|
||||
if (durable != null && !durable.isEmpty()) {
|
||||
mqttSubscription.setDurable(Boolean.parseBoolean(durable));
|
||||
}
|
||||
|
||||
Subscription[] filteredNormalTopicSubscriptionList = andesAdminStub.getFilteredSubscriptions(
|
||||
mqttSubscription, tenantDomain);
|
||||
SubscriptionList topics = new SubscriptionList();
|
||||
|
||||
if (filteredNormalTopicSubscriptionList != null) {
|
||||
topics.setList(Arrays.asList(filteredNormalTopicSubscriptionList));
|
||||
topics.setCount(filteredNormalTopicSubscriptionList.length);
|
||||
}
|
||||
|
||||
return Response.status(Response.Status.OK).entity(topics).build();
|
||||
} catch (RemoteException | AndesMQTTAdminServiceBrokerManagerAdminException |
|
||||
UserStoreException | MQTTConfigurationException e) {
|
||||
String msg = "Error occurred at server side while fetching topic list.";
|
||||
log.error(msg, e);
|
||||
return Response.serverError().entity(
|
||||
new ErrorResponse.ErrorResponseBuilder().setMessage(msg).build()).build();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the AndesAdminServices stub.
|
||||
*
|
||||
* @param config the servlet configuration
|
||||
* @return an AndesAdminServiceStub
|
||||
* @throws AxisFault, UserStoreException
|
||||
*/
|
||||
private static AndesMQTTAdminServiceStub getAndesMQTTAdminServiceStub(ServletConfig config)
|
||||
throws AxisFault, UserStoreException, MQTTConfigurationException {
|
||||
|
||||
String hostName = System.getProperty("mqtt.broker.host");
|
||||
String mqttPort = System.getProperty("mqtt.broker.https.port");
|
||||
|
||||
if (hostName == null || mqttPort == null) {
|
||||
throw new MQTTConfigurationException("MQTT hostname/port configuration is not available in system " +
|
||||
"properties");
|
||||
}
|
||||
|
||||
String backendServerURL = "https://" + hostName + ":" + mqttPort +
|
||||
"/services/AndesMQTTAdminService.AndesMQTTAdminServiceHttpsSoap11Endpoint/";
|
||||
ConfigurationContext configContext =
|
||||
(ConfigurationContext) config.getServletContext().getAttribute(CarbonConstants.CONFIGURATION_CONTEXT);
|
||||
AndesMQTTAdminServiceStub stub = new AndesMQTTAdminServiceStub(configContext, backendServerURL);
|
||||
|
||||
HttpTransportProperties.Authenticator basicAuthentication = new HttpTransportProperties.Authenticator();
|
||||
basicAuthentication.setUsername(MQTTMgtAPIUtils.getUserRealm().getRealmConfiguration().getAdminUserName());
|
||||
basicAuthentication.setPassword(MQTTMgtAPIUtils.getUserRealm().getRealmConfiguration().getAdminPassword());
|
||||
stub._getServiceClient().getOptions().setProperty(HTTPConstants.AUTHENTICATE, basicAuthentication);
|
||||
|
||||
return stub;
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,42 @@
|
||||
/*
|
||||
* Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*/
|
||||
|
||||
package org.wso2.carbon.andes.extensions.device.mgt.jaxrs.util;
|
||||
|
||||
/**
|
||||
* Holds the constants used by DeviceImpl Management Admin web application.
|
||||
*/
|
||||
public class Constants {
|
||||
|
||||
public static final String SCOPE = "scope";
|
||||
|
||||
public final class ErrorMessages {
|
||||
private ErrorMessages () { throw new AssertionError(); }
|
||||
|
||||
public static final String STATUS_BAD_REQUEST_MESSAGE_DEFAULT = "Bad Request";
|
||||
|
||||
}
|
||||
|
||||
public final class DeviceConstants {
|
||||
private DeviceConstants () { throw new AssertionError(); }
|
||||
|
||||
public static final String APPLICATION_JSON = "application/json";
|
||||
public static final String HEADER_CONTENT_TYPE = "Content-Type";
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*
|
||||
*/
|
||||
package org.wso2.carbon.andes.extensions.device.mgt.jaxrs.util;
|
||||
|
||||
import org.wso2.carbon.andes.extensions.device.mgt.jaxrs.beans.ErrorResponse;
|
||||
|
||||
import javax.ws.rs.BadRequestException;
|
||||
import javax.ws.rs.core.Response;
|
||||
import java.io.Serializable;
|
||||
|
||||
public class InputValidationException extends BadRequestException implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 147843579458906890L;
|
||||
|
||||
public InputValidationException(ErrorResponse error) {
|
||||
super(Response.status(Response.Status.BAD_REQUEST).entity(error).build());
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,110 @@
|
||||
/*
|
||||
* Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*/
|
||||
|
||||
package org.wso2.carbon.andes.extensions.device.mgt.jaxrs.util;
|
||||
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.wso2.carbon.context.CarbonContext;
|
||||
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
||||
//import org.wso2.carbon.device.mgt.analytics.dashboard.GadgetDataService;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceManagementException;
|
||||
import org.wso2.carbon.user.api.AuthorizationManager;
|
||||
import org.wso2.carbon.user.api.UserRealm;
|
||||
import org.wso2.carbon.user.api.UserStoreException;
|
||||
import org.wso2.carbon.user.core.service.RealmService;
|
||||
|
||||
import javax.ws.rs.core.MediaType;
|
||||
|
||||
/**
|
||||
* MDMAPIUtils class provides utility function used by CDM REST-API classes.
|
||||
*/
|
||||
public class MQTTMgtAPIUtils {
|
||||
|
||||
public static final MediaType DEFAULT_CONTENT_TYPE = MediaType.APPLICATION_JSON_TYPE;
|
||||
private static final String NOTIFIER_FREQUENCY = "notifierFrequency";
|
||||
private static Log log = LogFactory.getLog(MQTTMgtAPIUtils.class);
|
||||
|
||||
public static RealmService getRealmService() throws UserStoreException {
|
||||
RealmService realmService;
|
||||
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
||||
realmService = (RealmService) ctx.getOSGiService(RealmService.class, null);
|
||||
if (realmService == null) {
|
||||
String msg = "Realm service has not initialized.";
|
||||
log.error(msg);
|
||||
throw new IllegalStateException(msg);
|
||||
}
|
||||
return realmService;
|
||||
}
|
||||
|
||||
/**
|
||||
* Getting the current tenant's user realm
|
||||
*/
|
||||
public static UserRealm getUserRealm() throws UserStoreException {
|
||||
RealmService realmService;
|
||||
UserRealm realm;
|
||||
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
||||
realmService = (RealmService) ctx.getOSGiService(RealmService.class, null);
|
||||
|
||||
if (realmService == null) {
|
||||
throw new IllegalStateException("Realm service not initialized");
|
||||
}
|
||||
int tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
realm = realmService.getTenantUserRealm(tenantId);
|
||||
return realm;
|
||||
}
|
||||
|
||||
public static AuthorizationManager getAuthorizationManager() throws UserStoreException {
|
||||
RealmService realmService;
|
||||
AuthorizationManager authorizationManager;
|
||||
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
||||
realmService = (RealmService) ctx.getOSGiService(RealmService.class, null);
|
||||
if (realmService == null) {
|
||||
throw new IllegalStateException("Realm service is not initialized.");
|
||||
}
|
||||
int tenantId = ctx.getTenantId();
|
||||
authorizationManager = realmService.getTenantUserRealm(tenantId).getAuthorizationManager();
|
||||
|
||||
return authorizationManager;
|
||||
}
|
||||
|
||||
public static int getTenantId(String tenantDomain) throws DeviceManagementException {
|
||||
RealmService realmService =
|
||||
(RealmService) PrivilegedCarbonContext.getThreadLocalCarbonContext().getOSGiService(RealmService.class, null);
|
||||
if (realmService == null) {
|
||||
throw new IllegalStateException("Realm service has not been initialized.");
|
||||
}
|
||||
try {
|
||||
return realmService.getTenantManager().getTenantId(tenantDomain);
|
||||
} catch (UserStoreException e) {
|
||||
throw new DeviceManagementException("Error occured while trying to " +
|
||||
"obtain tenant id of currently logged in user");
|
||||
}
|
||||
}
|
||||
|
||||
public static String getAuthenticatedUser() {
|
||||
PrivilegedCarbonContext threadLocalCarbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
||||
String username = threadLocalCarbonContext.getUsername();
|
||||
String tenantDomain = threadLocalCarbonContext.getTenantDomain();
|
||||
if (username != null && username.endsWith(tenantDomain)) {
|
||||
return username.substring(0, username.lastIndexOf("@"));
|
||||
}
|
||||
return username;
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,43 @@
|
||||
/*
|
||||
* Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*
|
||||
*/
|
||||
package org.wso2.carbon.andes.extensions.device.mgt.jaxrs.util;
|
||||
|
||||
import org.wso2.carbon.andes.extensions.device.mgt.jaxrs.beans.*;
|
||||
|
||||
public class RequestValidationUtil {
|
||||
public static void validatePaginationParameters(int offset, int limit) {
|
||||
if (offset < 0) {
|
||||
throw new InputValidationException(
|
||||
new ErrorResponse.ErrorResponseBuilder().setCode(400l).setMessage("Request parameter offset is s " +
|
||||
"negative value.").build());
|
||||
}
|
||||
if (limit < 0) {
|
||||
throw new InputValidationException(
|
||||
new ErrorResponse.ErrorResponseBuilder().setCode(400l).setMessage("Request parameter limit is a " +
|
||||
"negative value.").build());
|
||||
}
|
||||
if (limit > 100) {
|
||||
throw new InputValidationException(
|
||||
new ErrorResponse.ErrorResponseBuilder().setCode(400l).setMessage("Request parameter limit should" +
|
||||
" be less than or equal to 100.").build());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
|
||||
<!--
|
||||
~ Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
~
|
||||
~ WSO2 Inc. 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.
|
||||
-->
|
||||
|
||||
<!--
|
||||
This file defines class loading policy of the whole container. But this behaviour can be overridden by individual webapps by putting this file into the META-INF/ directory.
|
||||
-->
|
||||
<Classloading xmlns="http://wso2.org/projects/as/classloading">
|
||||
|
||||
<!-- Parent-first or child-first. Default behaviour is child-first.-->
|
||||
<ParentFirst>false</ParentFirst>
|
||||
|
||||
<!--
|
||||
Default environments that contains provides to all the webapps. This can be overridden by individual webapps by specifing required environments
|
||||
Tomcat environment is the default and every webapps gets it even if they didn't specify it.
|
||||
e.g. If a webapps requires CXF, they will get both Tomcat and CXF.
|
||||
-->
|
||||
<Environments>CXF,Carbon</Environments>
|
||||
</Classloading>
|
||||
@ -0,0 +1,58 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
~ Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
~
|
||||
~ WSO2 Inc. 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.
|
||||
-->
|
||||
|
||||
<beans xmlns="http://www.springframework.org/schema/beans"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:jaxrs="http://cxf.apache.org/jaxrs" xmlns:cxf="http://cxf.apache.org/core"
|
||||
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
|
||||
http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd">
|
||||
|
||||
<jaxrs:server id="services" address="/">
|
||||
<jaxrs:serviceBeans>
|
||||
<ref bean="mqttManagementService"/>
|
||||
<ref bean="swaggerResource"/>
|
||||
</jaxrs:serviceBeans>
|
||||
<jaxrs:providers>
|
||||
<ref bean="jsonProvider"/>
|
||||
<!--<ref bean="errorHandler"/>-->
|
||||
<ref bean="swaggerWriter"/>
|
||||
</jaxrs:providers>
|
||||
</jaxrs:server>
|
||||
|
||||
<bean id="swaggerWriter" class="io.swagger.jaxrs.listing.SwaggerSerializers"/>
|
||||
<bean id="swaggerResource" class="io.swagger.jaxrs.listing.ApiListingResource"/>
|
||||
|
||||
<bean id="swaggerConfig" class="io.swagger.jaxrs.config.BeanConfig">
|
||||
<property name="resourcePackage" value="org.wso2.carbon.device.mgt.jaxrs"/>
|
||||
<property name="version" value="1.0"/>
|
||||
<property name="host" value="localhost:9443"/>
|
||||
<property name="schemes" value="https"/>
|
||||
<property name="basePath" value="/api/device-mgt/v1.0"/>
|
||||
<property name="title" value="Device Management Admin Service API Definitions"/>
|
||||
<property name="contact" value="dev@wso2.org"/>
|
||||
<property name="license" value="Apache 2.0"/>
|
||||
<property name="licenseUrl" value="http://www.apache.org/licenses/LICENSE-2.0.html"/>
|
||||
<property name="scan" value="true"/>
|
||||
</bean>
|
||||
|
||||
<bean id="mqttManagementService"
|
||||
class="org.wso2.carbon.andes.extensions.device.mgt.jaxrs.service.impl.MQTTManagementAdminServiceImpl"/>
|
||||
<bean id="jsonProvider" class="org.wso2.carbon.andes.extensions.device.mgt.jaxrs.common.GsonMessageBodyHandler"/>
|
||||
|
||||
</beans>
|
||||
@ -0,0 +1,119 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
~ Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
~
|
||||
~ WSO2 Inc. 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.
|
||||
-->
|
||||
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
|
||||
<display-name>Admin-Webapp</display-name>
|
||||
<servlet>
|
||||
<description>JAX-WS/JAX-RS Device Management Endpoint</description>
|
||||
<display-name>JAX-WS/JAX-RS Servlet</display-name>
|
||||
<servlet-name>CXFServlet</servlet-name>
|
||||
<servlet-class>
|
||||
org.apache.cxf.transport.servlet.CXFServlet
|
||||
</servlet-class>
|
||||
<!-- configure a security filter -->
|
||||
<init-param>
|
||||
<param-name>swagger.security.filter</param-name>
|
||||
<param-value>ApiAuthorizationFilterImpl</param-value>
|
||||
</init-param>
|
||||
<load-on-startup>1</load-on-startup>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>CXFServlet</servlet-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
<session-config>
|
||||
<session-timeout>60</session-timeout>
|
||||
</session-config>
|
||||
|
||||
<context-param>
|
||||
<param-name>doAuthentication</param-name>
|
||||
<param-value>false</param-value>
|
||||
</context-param>
|
||||
|
||||
<!--publish to apim-->
|
||||
<context-param>
|
||||
<param-name>managed-api-enabled</param-name>
|
||||
<param-value>true</param-value>
|
||||
</context-param>
|
||||
<context-param>
|
||||
<param-name>managed-api-owner</param-name>
|
||||
<param-value>admin</param-value>
|
||||
</context-param>
|
||||
<context-param>
|
||||
<param-name>isSharedWithAllTenants</param-name>
|
||||
<param-value>true</param-value>
|
||||
</context-param>
|
||||
|
||||
<!-- Below configuration is used to redirect http requests to https -->
|
||||
<security-constraint>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>DeviceMgt-Admin</web-resource-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</web-resource-collection>
|
||||
<user-data-constraint>
|
||||
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
|
||||
</user-data-constraint>
|
||||
</security-constraint>
|
||||
|
||||
<filter>
|
||||
<filter-name>ApiOriginFilter</filter-name>
|
||||
<filter-class>org.wso2.carbon.andes.extensions.device.mgt.jaxrs.ApiOriginFilter</filter-class>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<filter-name>HttpHeaderSecurityFilter</filter-name>
|
||||
<filter-class>org.apache.catalina.filters.HttpHeaderSecurityFilter</filter-class>
|
||||
<init-param>
|
||||
<param-name>hstsEnabled</param-name>
|
||||
<param-value>false</param-value>
|
||||
</init-param>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<filter-name>ContentTypeBasedCachePreventionFilter</filter-name>
|
||||
<filter-class>org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventionFilter</filter-class>
|
||||
<init-param>
|
||||
<param-name>patterns</param-name>
|
||||
<param-value>text/html" ,application/json" ,text/plain</param-value>
|
||||
</init-param>
|
||||
<init-param>
|
||||
<param-name>filterAction</param-name>
|
||||
<param-value>enforce</param-value>
|
||||
</init-param>
|
||||
<init-param>
|
||||
<param-name>httpHeaders</param-name>
|
||||
<param-value>Cache-Control: no-store, no-cache, must-revalidate, private</param-value>
|
||||
</init-param>
|
||||
</filter>
|
||||
|
||||
<filter-mapping>
|
||||
<filter-name>HttpHeaderSecurityFilter</filter-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</filter-mapping>
|
||||
|
||||
<filter-mapping>
|
||||
<filter-name>ContentTypeBasedCachePreventionFilter</filter-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</filter-mapping>
|
||||
|
||||
<filter-mapping>
|
||||
<filter-name>ApiOriginFilter</filter-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</filter-mapping>
|
||||
|
||||
</web-app>
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>mb-extensions</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -138,6 +138,32 @@
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>extensions</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -34,6 +34,7 @@
|
||||
|
||||
<modules>
|
||||
<module>org.wso2.carbon.andes.extensions.device.mgt.mqtt.authorization</module>
|
||||
<module>org.wso2.carbon.andes.extensions.device.mgt.api</module>
|
||||
</modules>
|
||||
|
||||
<build>
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>carbon-device-mgt-plugins-parent</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>pull-notification-listeners</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -105,6 +105,32 @@
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>extensions</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -20,7 +20,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>siddhi-extensions</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -84,6 +84,32 @@
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
@ -20,7 +20,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>siddhi-extensions</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>extensions</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
<parent>
|
||||
<artifactId>android-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -80,6 +80,32 @@
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
|
||||
@ -34,7 +34,7 @@ public class BlacklistApplications extends AndroidOperation implements Serializa
|
||||
|
||||
@ApiModelProperty(name = "appIdentifiers", value = "A list of application package names to be blacklisted.",
|
||||
required = true)
|
||||
@Size(min = 2, max = 45)
|
||||
@Size(min = 1, max = 45)
|
||||
private List<String> appIdentifiers;
|
||||
|
||||
public List<String> getAppIdentifier() {
|
||||
|
||||
@ -316,15 +316,15 @@ public class DeviceManagementServiceImpl implements DeviceManagementService {
|
||||
@Path("/{id}/status")
|
||||
@Override
|
||||
public Response isEnrolled(@PathParam("id") String id, @HeaderParam("If-Modified-Since") String ifModifiedSince) {
|
||||
boolean result;
|
||||
DeviceIdentifier deviceIdentifier = AndroidAPIUtils.convertToDeviceIdentifierObject(id);
|
||||
try {
|
||||
result = AndroidAPIUtils.getDeviceManagementService().isEnrolled(deviceIdentifier);
|
||||
if (result) {
|
||||
Device device = AndroidAPIUtils.getDeviceManagementService().getDevice(deviceIdentifier);
|
||||
if (device != null) {
|
||||
String status = String.valueOf(device.getEnrolmentInfo().getStatus());
|
||||
Message responseMessage = new Message();
|
||||
responseMessage.setResponseCode(Response.Status.OK.toString());
|
||||
responseMessage.setResponseMessage("Android device that carries the id '" +
|
||||
id + "' is enrolled");
|
||||
responseMessage
|
||||
.setResponseMessage("Status of android device that carries the id '" + id + "' is " + status);
|
||||
return Response.status(Response.Status.OK).entity(responseMessage).build();
|
||||
} else {
|
||||
Message responseMessage = new Message();
|
||||
|
||||
@ -74,8 +74,8 @@ public class EventReceiverServiceImpl implements EventReceiverService {
|
||||
JsonObject jsonObject = gson.fromJson(eventPayload, JsonObject.class);
|
||||
Object payload[] = {
|
||||
jsonObject.get(TIME_STAMP).getAsLong(),
|
||||
jsonObject.get(LONGITUDE).getAsDouble(),
|
||||
jsonObject.get(LATITUDE).getAsDouble()
|
||||
jsonObject.get(LATITUDE).getAsDouble(),
|
||||
jsonObject.get(LONGITUDE).getAsDouble()
|
||||
};
|
||||
try {
|
||||
if (AndroidAPIUtils.getEventPublisherService().publishEvent(
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
<parent>
|
||||
<artifactId>android-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -47,6 +47,32 @@
|
||||
</archive>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
||||
@ -23,13 +23,13 @@
|
||||
<parent>
|
||||
<artifactId>android-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>org.wso2.carbon.device.mgt.mobile.android.ui</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<name>WSO2 Carbon - Mobile Android UI</name>
|
||||
<packaging>pom</packaging>
|
||||
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
"appContext" : "/android-web-agent/",
|
||||
"httpsURL" : "%https.ip%",
|
||||
"httpURL" : "%http.ip%",
|
||||
"managerHTTPSURL": "https://%iot.manager.host%:%iot.manager.https.port%",
|
||||
"enrollmentDir": "/android-web-agent/enrollment",
|
||||
"adminService":"%https.ip%",
|
||||
"callBackUrl":"%https.ip%/mdm-admin",
|
||||
|
||||
@ -37,8 +37,8 @@ under the License. --}}
|
||||
}}
|
||||
<div class="row">
|
||||
<div class="col-md-4 wr-text">
|
||||
If you have not already enrolled this device with {{companyName}},
|
||||
Download and install following IoT Server Agent to continue.
|
||||
If you haven't already enrolled this device with {{companyName}},
|
||||
download and install the following IoT Server Agent to continue.
|
||||
<div class="wr-buttons">
|
||||
<a href="{{agentDownloadURL}}" class="btn-download-agent">Download IoT Server Agent</a>
|
||||
</div>
|
||||
|
||||
@ -25,7 +25,7 @@ function onRequest(context) {
|
||||
// setting android agent download URL
|
||||
// Needs host=>http:9763 since self-signed certificates won't allow downloads in android
|
||||
//TODO: try to retrieve page name from UUF
|
||||
viewModel.agentDownloadURL = mdmProps["generalConfig"]["host"] + mdmProps["appContext"] + "public/mdm.page.enrollments.android.download-agent/asset/" + mdmProps["androidAgentApp"];
|
||||
viewModel.agentDownloadURL = mdmProps["managerHTTPSURL"] + mdmProps["appContext"] + "public/mdm.page.enrollments.android.download-agent/asset/" + mdmProps["androidAgentApp"];
|
||||
var companyProps = session.get("COMPANY_DETAILS");
|
||||
if (!companyProps) {
|
||||
viewModel.companyName = mdmProps.generalConfig.companyName;
|
||||
|
||||
@ -20,12 +20,13 @@ function onRequest(context) {
|
||||
// var log = new Log("device-view.js");
|
||||
var deviceType = context["uriParams"]["deviceType"];
|
||||
var deviceId = request.getParameter("id");
|
||||
var owner = request.getParameter("owner");
|
||||
var deviceViewData = {};
|
||||
var devicemgtProps = require("/app/modules/conf-reader/main.js")["conf"];
|
||||
|
||||
if (deviceType && deviceId) {
|
||||
var deviceModule = require("/app/modules/business-controllers/device.js")["deviceModule"];
|
||||
var response = deviceModule.viewDevice(deviceType, deviceId);
|
||||
var response = deviceModule.viewDevice(deviceType, deviceId, owner);
|
||||
if (response["status"] == "success") {
|
||||
deviceViewData["deviceFound"] = true;
|
||||
deviceViewData["isAuthorized"] = true;
|
||||
|
||||
@ -302,8 +302,8 @@ var InitiateViewOption = null;
|
||||
|
||||
var viewModel = {};
|
||||
viewModel["applications"] = data;
|
||||
viewModel["deviceType"] = deviceType;
|
||||
viewModel["deviceId"] = deviceId;
|
||||
viewModel["deviceType"] = deviceType;
|
||||
viewModel["appContext"] = context;
|
||||
var content = template(viewModel);
|
||||
$("#applications-list-container").html(content);
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<img src="">
|
||||
<div class="app-info">
|
||||
<h4 title="{{name}}">{{name}}</h4>
|
||||
<p>v{{version}}</p>
|
||||
<p class="truncate">v{{version}}</p>
|
||||
</div>
|
||||
</div>
|
||||
{{/each}}
|
||||
|
||||
@ -15,7 +15,7 @@
|
||||
</p>
|
||||
<div class="actions">
|
||||
<div class="action-btn ripple">
|
||||
<p><a href="{{appContext}}/policy/effective-policy?type={{deviceType}}&id={{deviceId}}">
|
||||
<p><a href="{{appContext}}/devicemgt/policy/effective-policy?type={{deviceType}}&id={{deviceId}}">
|
||||
<i class="icon fw fw-view fw-2x"></i> <span>View Policy </span></a></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -36,7 +36,7 @@
|
||||
}
|
||||
</style>
|
||||
{{#each controlOperations}}
|
||||
<a {{#unless isDisabled}} href="javascript:operationSelect('{{operation}}')" {{else}} href="javascript:void(0)" class="operation-tile op-disabled" title="{{disabledText}}" data-toggle="tooltip" {{/unless}}>
|
||||
<a {{#unless isDisabled}} href="javascript:operationSelect('{{operation}}')" {{else}} href="javascript:void(0)" class="op-disabled" title="{{disabledText}}" data-toggle="tooltip" {{/unless}}>
|
||||
{{#if iconFont}}
|
||||
<i class="fw {{iconFont}}"></i>
|
||||
{{else}}
|
||||
|
||||
@ -742,9 +742,12 @@ var androidOperationModule = function () {
|
||||
|
||||
// only for app whitelisting and black listing
|
||||
if (operationCode == "APP-RESTRICTION" && key == "restrictedApplications") {
|
||||
//remove elements before adding
|
||||
$('[data-add-form-container="#restricted-applications-grid"]').empty();
|
||||
|
||||
var i;
|
||||
for (i = 0; i < uiPayload.restrictedApplications.length; ++i) {
|
||||
$("#restrictedapplication-list").append('<tr>' +
|
||||
$('[data-add-form-container="#restricted-applications-grid"]').append('<tr>' +
|
||||
'<th>'+ (i+1) +'</th> <th>' + uiPayload.restrictedApplications[i].appName +
|
||||
'</th> <th>' + uiPayload.restrictedApplications[i].packageName + '</th></tr>');
|
||||
}
|
||||
|
||||
@ -321,7 +321,7 @@
|
||||
<input id="camera-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="cameraEnabled" checked="checked"/>
|
||||
<span class="helper"
|
||||
title="Having this checked would enable Usage of phone camera in the device.">
|
||||
title="Enables the usage of device camera.">
|
||||
Allow use of camera
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -340,7 +340,7 @@
|
||||
<input id="disallow-configuring-credentials-enabled" type="checkbox"
|
||||
class="operationDataKeys"
|
||||
data-key="disallowConfigCredentials"/>
|
||||
<span class="helper" title="Having this checked would disallow configuring credentials.">
|
||||
<span class="helper" title="Users are restricted from changing their password.">
|
||||
Disallow configuring credentials
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -351,7 +351,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-configuring-VPN-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowConfigVpn"/>
|
||||
<span class="helper" title="Having this checked would disallow configuring VPN.">
|
||||
<span class="helper" title="Users are restricted from configuring VPN.">
|
||||
Disallow configuring VPN
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -364,7 +364,7 @@
|
||||
<input id="disallow-configuring-app-control-enabled" type="checkbox"
|
||||
class="operationDataKeys"
|
||||
data-key="disallowAppControl"/>
|
||||
<span class="helper" title="Having this checked would disallow configuring app control.">
|
||||
<span class="helper" title="Restricts users from modifying applications in the device's settings or launchers.">
|
||||
Disallow configuring app control
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -376,7 +376,8 @@
|
||||
<input id="disallow-cross-profile-copy-paste-enabled" type="checkbox"
|
||||
class="operationDataKeys"
|
||||
data-key="disallowCrossProfileCopyPaste"/>
|
||||
<span class="helper" title="Having this checked would disallow cross profile copy paste.">
|
||||
<span class="helper" title="Device owners are restricted from copying items that are copied to the
|
||||
clipboard from the managed profile to the parent profile or vice-versa.">
|
||||
Disallow cross profile copy paste
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -387,8 +388,8 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-debugging-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowDebugging"/>
|
||||
<span class="helper" title="Having this checked would disallow debugging.">
|
||||
Disallow debuging
|
||||
<span class="helper" title="Users are restricted from accessing debug logs.">
|
||||
Disallow debugging
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
</label>
|
||||
@ -398,7 +399,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-install-apps-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowInstallApps"/>
|
||||
<span class="helper" title="Having this checked would disallow install apps.">
|
||||
<span class="helper" title="Users are restricted from installing applications.">
|
||||
Disallow install apps
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -410,8 +411,7 @@
|
||||
<input id="disallow-installing-from-unknown-enabled" type="checkbox"
|
||||
class="operationDataKeys"
|
||||
data-key="disallowInstallUnknownSources"/>
|
||||
<span class="helper" title="Having this checked would disallow installing from unknown
|
||||
sources.">
|
||||
<span class="helper" title="Users are restricted from installing applications from unknown origin.">
|
||||
Disallow install from unknown sources
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -422,7 +422,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-modify-accounts-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowModifyAccounts"/>
|
||||
<span class="helper" title="Having this checked would disallow modify accounts.">
|
||||
<span class="helper" title="Users are restricted from modifying user accounts.">
|
||||
Disallow modify accounts
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -433,7 +433,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-outgoing-beam-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowOutgoingBeam"/>
|
||||
<span class="helper" title="Having this checked would disallow outgoing beam.">
|
||||
<span class="helper" title="Users are restricted from using NFC bump.">
|
||||
Disallow outgoing beam
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -444,7 +444,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-location-sharing-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowLocationSharing"/>
|
||||
<span class="helper" title="Having this checked would disallow location sharing.">
|
||||
<span class="helper" title="Users are restricted from sharing their geo-location.">
|
||||
Disallow location sharing
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -455,7 +455,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-uninstall-apps-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowUninstallApps"/>
|
||||
<span class="helper" title="Having this checked would disallow uninstall apps.">
|
||||
<span class="helper" title="Users are restricted from uninstalling applications.">
|
||||
Disallow uninstall apps
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -467,7 +467,7 @@
|
||||
<input id="disallow-parent-profile-app-linking-enabled" type="checkbox"
|
||||
class="operationDataKeys"
|
||||
data-key="disallowParentProfileAppLinking"/>
|
||||
<span class="helper" title="Having this checked would disallow parent profile app linking.">
|
||||
<span class="helper" title="Allows apps in the parent profile to access or handle web links from the managed profile.">
|
||||
Disallow parent profile app linking
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -478,7 +478,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="ensure-verifying-apps-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="ensureVerifyApps"/>
|
||||
<span class="helper" title="Having this checked would ensure verifying apps .">
|
||||
<span class="helper" title="Ensure app verification.">
|
||||
Ensure verifying apps
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -489,7 +489,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="enable-auto-timing-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="enableAutoTime"/>
|
||||
<span class="helper" title="Having this checked would enable auto timing .">
|
||||
<span class="helper" title="Enables the auto time feature that is in the device's Settings > Date & Time.">
|
||||
Enable auto timing
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -500,7 +500,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disable-screen-capture-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disableScreenCapture"/>
|
||||
<span class="helper" title="Having this checked would disable screen capture .">
|
||||
<span class="helper" title="Screen capturing would be disabled.">
|
||||
Disable screen capture
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -517,7 +517,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-SMS-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowSMS"/>
|
||||
<span class="helper" title="Having this checked would disallow SMS.">
|
||||
<span class="helper" title="Users are restricted from sending SMS messages.">
|
||||
Disallow SMS
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -528,7 +528,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="volume-adjust-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowAdjustVolumeEnabled"/>
|
||||
<span class="helper" title="Having this checked would disallow volume adjust.">
|
||||
<span class="helper" title="Users are restricted from adjusting device volume.">
|
||||
Disallow volume adjust
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -540,7 +540,7 @@
|
||||
<input id="disallow-configuring-cell-broadcast-enabled" type="checkbox"
|
||||
class="operationDataKeys"
|
||||
data-key="disallowConfigCellBroadcasts"/>
|
||||
<span class="helper" title="Having this checked would disallow configuring cell broadcast.">
|
||||
<span class="helper" title="Users are restricted from configuring cell broadcast.">
|
||||
Disallow cell broadcast
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -551,7 +551,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-configuring-bluetooth-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowConfigBluetooth"/>
|
||||
<span class="helper" title="Having this checked would disallow configuring bluetooth.">
|
||||
<span class="helper" title="Users are restricted from configuring bluetooth.">
|
||||
Disallow configuring bluetooth.
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -564,7 +564,7 @@
|
||||
class="operationDataKeys"
|
||||
data-key="disallowConfigMobileNetworks"/>
|
||||
<span class="helper"
|
||||
title="Having this checked would disallow configuring mobile networks.">
|
||||
title="Users are restricted from configuring mobile networks.">
|
||||
Disallow configuring mobile networks
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -576,7 +576,7 @@
|
||||
<input id="disallow-configuring-tethering-enabled" type="checkbox"
|
||||
class="operationDataKeys"
|
||||
data-key="disallowConfigTethering"/>
|
||||
<span class="helper" title="Having this checked would disallow configuring tethering.">
|
||||
<span class="helper" title="Users are restricted from configuring tethering.">
|
||||
Disallow configuring tethering
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -587,7 +587,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-configuring-Wifi-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowConfigWifi"/>
|
||||
<span class="helper" title="Having this checked would disallow configuring Wifi.">
|
||||
<span class="helper" title="Users are restricted from configuring Wifi.">
|
||||
Disallow configuring Wifi
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -598,7 +598,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-safe-boot-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowSafeBoot"/>
|
||||
<span class="helper" title="Having this checked would disallow safe boot.">
|
||||
<span class="helper" title="Users are restricted to enter safe boot mode.">
|
||||
Disallow safe boot
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -609,7 +609,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-outgoing-calls-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowOutgoingCalls"/>
|
||||
<span class="helper" title="Having this checked would disallow outgoing calls.">
|
||||
<span class="helper" title="Users are restricted from taking calls.">
|
||||
Disallow outgoing calls
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -620,7 +620,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-mount-physical-media-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowMountPhysicalMedia"/>
|
||||
<span class="helper" title="Having this checked would disallow mount physical media.">
|
||||
<span class="helper" title="Users are restricted from mounting the device as physical media.">
|
||||
Disallow mount physical media
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -631,7 +631,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-create-window-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowCreateWindows"/>
|
||||
<span class="helper" title="Having this checked would disallow create window.">
|
||||
<span class="helper" title="Restricts device owners from opening new windows beside the app windows.">
|
||||
Disallow create window
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -642,7 +642,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-factory-reset-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowFactoryReset"/>
|
||||
<span class="helper" title="Having this checked would disallow factory reset.">
|
||||
<span class="helper" title="Users are restricted from performing factory reset.">
|
||||
Disallow factory reset
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -653,7 +653,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-remove-user-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowRemoveUser"/>
|
||||
<span class="helper" title="Having this checked would disallow remove user.">
|
||||
<span class="helper" title="Users are restricted from removing user.">
|
||||
Disallow remove user
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -664,7 +664,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-add-user-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowAddUser"/>
|
||||
<span class="helper" title="Having this checked would disallow add user.">
|
||||
<span class="helper" title="Users are restricted from creating new users.">
|
||||
Disallow add user
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -675,7 +675,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-network-reset-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowNetworkReset"/>
|
||||
<span class="helper" title="Having this checked would disallow network reset.">
|
||||
<span class="helper" title="Users are restricted from resetting network.">
|
||||
Disallow network reset
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -686,7 +686,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-USB-transfer-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowUSBFileTransfer"/>
|
||||
<span class="helper" title="Having this checked would disallow USB file transfer.">
|
||||
<span class="helper" title="Users are restricted from transferring files via USB.">
|
||||
Disallow USB file transfer
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -697,7 +697,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-unmute-microphone-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowUnmuteMicrophone"/>
|
||||
<span class="helper" title="Having this checked would disallow unmute microphone.">
|
||||
<span class="helper" title="Users are restricted from unmuting the microphone.">
|
||||
Disallow unmute microphone
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -715,7 +715,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disable-status-bar-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disableStatusBar"/>
|
||||
<span class="helper" title="Having this checked would disable status bar .">
|
||||
<span class="helper" title="Checking this will dissable the status bar.">
|
||||
Disable status bar
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
|
||||
@ -327,7 +327,7 @@
|
||||
<input id="camera-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="cameraEnabled" checked="checked"/>
|
||||
<span class="helper"
|
||||
title="Having this checked would enable Usage of phone camera in the device.">
|
||||
title="Enables the usage of device camera.">
|
||||
Allow use of camera
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -348,7 +348,7 @@
|
||||
class="operationDataKeys"
|
||||
data-key="disallowConfigCredentials"/>
|
||||
<span class="helper"
|
||||
title="Having this checked would disallow configuring credentials.">
|
||||
title="Users are restricted from changing their password.">
|
||||
Disallow configuring credentials
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -359,7 +359,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-configuring-VPN-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowConfigVpn"/>
|
||||
<span class="helper" title="Having this checked would disallow configuring VPN.">
|
||||
<span class="helper" title="Users are restricted from configuring VPN.">
|
||||
Disallow configuring VPN
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -373,7 +373,7 @@
|
||||
class="operationDataKeys"
|
||||
data-key="disallowAppControl"/>
|
||||
<span class="helper"
|
||||
title="Having this checked would disallow configuring app control.">
|
||||
title="Restricts users from modifying applications in the device's settings or launchers.">
|
||||
Disallow configuring app control
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -386,7 +386,8 @@
|
||||
class="operationDataKeys"
|
||||
data-key="disallowCrossProfileCopyPaste"/>
|
||||
<span class="helper"
|
||||
title="Having this checked would disallow cross profile copy paste.">
|
||||
title="Device owners are restricted from copying items that are copied to the
|
||||
clipboard from the managed profile to the parent profile or vice-versa.">
|
||||
Disallow cross profile copy paste
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -397,8 +398,8 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-debugging-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowDebugging"/>
|
||||
<span class="helper" title="Having this checked would disallow debugging.">
|
||||
Disallow debuging
|
||||
<span class="helper" title="Users are restricted from accessing debug logs.">
|
||||
Disallow debugging
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
</label>
|
||||
@ -408,7 +409,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-install-apps-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowInstallApps"/>
|
||||
<span class="helper" title="Having this checked would disallow install apps.">
|
||||
<span class="helper" title="Users are restricted from installing applications.">
|
||||
Disallow install apps
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -420,8 +421,7 @@
|
||||
<input id="disallow-installing-from-unknown-enabled" type="checkbox"
|
||||
class="operationDataKeys"
|
||||
data-key="disallowInstallUnknownSources"/>
|
||||
<span class="helper" title="Having this checked would disallow installing from unknown
|
||||
sources.">
|
||||
<span class="helper" title="Users are restricted from installing applications from unknown origin.">
|
||||
Disallow install from unknown sources
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -432,7 +432,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-modify-accounts-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowModifyAccounts"/>
|
||||
<span class="helper" title="Having this checked would disallow modify accounts.">
|
||||
<span class="helper" title="Users are restricted from modifying user accounts.">
|
||||
Disallow modify accounts
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -443,7 +443,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-outgoing-beam-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowOutgoingBeam"/>
|
||||
<span class="helper" title="Having this checked would disallow outgoing beam.">
|
||||
<span class="helper" title="Users are restricted from using NFC bump.">
|
||||
Disallow outgoing beam
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -454,7 +454,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-location-sharing-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowLocationSharing"/>
|
||||
<span class="helper" title="Having this checked would disallow location sharing.">
|
||||
<span class="helper" title="Users are restricted from sharing their geo-location.">
|
||||
Disallow location sharing
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -465,7 +465,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-uninstall-apps-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowUninstallApps"/>
|
||||
<span class="helper" title="Having this checked would disallow uninstall apps.">
|
||||
<span class="helper" title="Users are restricted from uninstalling applications.">
|
||||
Disallow uninstall apps
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -478,7 +478,7 @@
|
||||
class="operationDataKeys"
|
||||
data-key="disallowParentProfileAppLinking"/>
|
||||
<span class="helper"
|
||||
title="Having this checked would disallow parent profile app linking.">
|
||||
title="Allows apps in the parent profile to access or handle web links from the managed profile.">
|
||||
Disallow parent profile app linking
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -489,7 +489,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="ensure-verifying-apps-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="ensureVerifyApps"/>
|
||||
<span class="helper" title="Having this checked would ensure verifying apps .">
|
||||
<span class="helper" title="Ensure app verification.">
|
||||
Ensure verifying apps
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -500,7 +500,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="enable-auto-timing-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="enableAutoTime"/>
|
||||
<span class="helper" title="Having this checked would enable auto timing .">
|
||||
<span class="helper" title="Enables the auto time feature that is in the device's Settings > Date & Time.">
|
||||
Enable auto timing
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -511,7 +511,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disable-screen-capture-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disableScreenCapture"/>
|
||||
<span class="helper" title="Having this checked would disable screen capture .">
|
||||
<span class="helper" title="Screen capturing would be disabled.">
|
||||
Disable screen capture
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -540,7 +540,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-SMS-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowSMS"/>
|
||||
<span class="helper" title="Having this checked would disallow SMS.">
|
||||
<span class="helper" title="Users are restricted from sending SMS messages.">
|
||||
Disallow SMS
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -551,7 +551,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="volume-adjust-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowAdjustVolumeEnabled"/>
|
||||
<span class="helper" title="Having this checked would disallow volume adjust.">
|
||||
<span class="helper" title="Users are restricted from adjusting device volume.">
|
||||
Disallow volume adjust
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -564,7 +564,7 @@
|
||||
class="operationDataKeys"
|
||||
data-key="disallowConfigCellBroadcasts"/>
|
||||
<span class="helper"
|
||||
title="Having this checked would disallow configuring cell broadcast.">
|
||||
title="Users are restricted from configuring cell broadcast.">
|
||||
Disallow cell broadcast
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -577,7 +577,7 @@
|
||||
class="operationDataKeys"
|
||||
data-key="disallowConfigBluetooth"/>
|
||||
<span class="helper"
|
||||
title="Having this checked would disallow configuring bluetooth.">
|
||||
title="Users are restricted from configuring bluetooth.">
|
||||
Disallow configuring bluetooth.
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -590,7 +590,7 @@
|
||||
class="operationDataKeys"
|
||||
data-key="disallowConfigMobileNetworks"/>
|
||||
<span class="helper"
|
||||
title="Having this checked would disallow configuring mobile networks.">
|
||||
title="Users are restricted from configuring mobile networks.">
|
||||
Disallow configuring mobile networks
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -603,7 +603,7 @@
|
||||
class="operationDataKeys"
|
||||
data-key="disallowConfigTethering"/>
|
||||
<span class="helper"
|
||||
title="Having this checked would disallow configuring tethering.">
|
||||
title="Users are restricted from configuring tethering.">
|
||||
Disallow configuring tethering
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -615,7 +615,7 @@
|
||||
<input id="disallow-configuring-Wifi-enabled" type="checkbox"
|
||||
class="operationDataKeys"
|
||||
data-key="disallowConfigWifi"/>
|
||||
<span class="helper" title="Having this checked would disallow configuring Wifi.">
|
||||
<span class="helper" title="Users are restricted from configuring Wifi.">
|
||||
Disallow configuring Wifi
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -626,7 +626,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-safe-boot-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowSafeBoot"/>
|
||||
<span class="helper" title="Having this checked would disallow safe boot.">
|
||||
<span class="helper" title="Users are restricted to enter safe boot mode.">
|
||||
Disallow safe boot
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -638,7 +638,7 @@
|
||||
<input id="disallow-outgoing-calls-enabled" type="checkbox"
|
||||
class="operationDataKeys"
|
||||
data-key="disallowOutgoingCalls"/>
|
||||
<span class="helper" title="Having this checked would disallow outgoing calls.">
|
||||
<span class="helper" title="Users are restricted from taking calls.">
|
||||
Disallow outgoing calls
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -651,7 +651,7 @@
|
||||
class="operationDataKeys"
|
||||
data-key="disallowMountPhysicalMedia"/>
|
||||
<span class="helper"
|
||||
title="Having this checked would disallow mount physical media.">
|
||||
title="Users are restricted from mounting the device as physical media.">
|
||||
Disallow mount physical media
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -662,7 +662,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-create-window-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowCreateWindows"/>
|
||||
<span class="helper" title="Having this checked would disallow create window.">
|
||||
<span class="helper" title="Restricts device owners from opening new windows beside the app windows.">
|
||||
Disallow create window
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -673,7 +673,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-factory-reset-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowFactoryReset"/>
|
||||
<span class="helper" title="Having this checked would disallow factory reset.">
|
||||
<span class="helper" title="Users are restricted from performing factory reset.">
|
||||
Disallow factory reset
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -684,7 +684,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-remove-user-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowRemoveUser"/>
|
||||
<span class="helper" title="Having this checked would disallow remove user.">
|
||||
<span class="helper" title="Users are restricted from removing user.">
|
||||
Disallow remove user
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -695,7 +695,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-add-user-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowAddUser"/>
|
||||
<span class="helper" title="Having this checked would disallow add user.">
|
||||
<span class="helper" title="Users are restricted from creating new users.">
|
||||
Disallow add user
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -706,7 +706,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-network-reset-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowNetworkReset"/>
|
||||
<span class="helper" title="Having this checked would disallow network reset.">
|
||||
<span class="helper" title="Users are restricted from resetting network.">
|
||||
Disallow network reset
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -717,7 +717,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disallow-USB-transfer-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disallowUSBFileTransfer"/>
|
||||
<span class="helper" title="Having this checked would disallow USB file transfer.">
|
||||
<span class="helper" title="Users are restricted from transferring files via USB.">
|
||||
Disallow USB file transfer
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -729,7 +729,7 @@
|
||||
<input id="disallow-unmute-microphone-enabled" type="checkbox"
|
||||
class="operationDataKeys"
|
||||
data-key="disallowUnmuteMicrophone"/>
|
||||
<span class="helper" title="Having this checked would disallow unmute microphone.">
|
||||
<span class="helper" title="Users are restricted from unmuting the microphone.">
|
||||
Disallow unmute microphone
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
@ -741,8 +741,7 @@
|
||||
<ul class="message message-info">
|
||||
<i class="icon fw fw-info"></i>
|
||||
<a id="policy-listing-status-msg">Below restrictions will be applied on devices with
|
||||
Android
|
||||
version 6.0 Marshmallow onwards only.</a>
|
||||
Android version 6.0 Marshmallow onwards only.</a>
|
||||
</ul>
|
||||
</div>
|
||||
<br/>
|
||||
@ -750,7 +749,7 @@
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disable-status-bar-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="disableStatusBar"/>
|
||||
<span class="helper" title="Having this checked would disable status bar .">
|
||||
<span class="helper" title="Checking this will dissable the status bar.">
|
||||
Disable status bar
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
|
||||
@ -26,7 +26,7 @@ function onRequest(context) {
|
||||
if (isCloud) {
|
||||
viewModel["enrollmentURL"] = "https://play.google.com/store/apps/details?id=org.wso2.iot.agent";
|
||||
} else {
|
||||
viewModel["enrollmentURL"] = devicemgtProps["generalConfig"]["host"] + devicemgtProps["androidEnrollmentDir"];
|
||||
viewModel["enrollmentURL"] = devicemgtProps["managerHTTPSURL"] + devicemgtProps["androidEnrollmentDir"];
|
||||
}
|
||||
return viewModel;
|
||||
}
|
||||
@ -17,7 +17,7 @@
|
||||
}}
|
||||
{{#zone "footer"}}
|
||||
<p>
|
||||
WSO2 | © 2015
|
||||
WSO2 | © 2017
|
||||
<a href="http://wso2.com/" target="_blank"><i class="icon fw fw-wso2"></i> Inc</a>.
|
||||
</p>
|
||||
{{/zone}}
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<artifactId>android-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -84,20 +84,32 @@
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<!--<plugin>-->
|
||||
<!--<groupId>org.apache.maven.plugins</groupId>-->
|
||||
<!--<artifactId>maven-surefire-plugin</artifactId>-->
|
||||
<!--<version>2.18</version>-->
|
||||
<!--<configuration>-->
|
||||
<!--<systemPropertyVariables>-->
|
||||
<!--<log4j.configuration>file:src/test/resources/log4j.properties-->
|
||||
<!--</log4j.configuration>-->
|
||||
<!--</systemPropertyVariables>-->
|
||||
<!--<suiteXmlFiles>-->
|
||||
<!--<suiteXmlFile>src/test/resources/testng.xml</suiteXmlFile>-->
|
||||
<!--</suiteXmlFiles>-->
|
||||
<!--</configuration>-->
|
||||
<!--</plugin>-->
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>mobile-plugins</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<parent>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<artifactId>carbon-device-mgt-plugins-parent</artifactId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
<parent>
|
||||
<artifactId>windows-plugin</artifactId>
|
||||
<groupId>org.wso2.carbon.devicemgt-plugins</groupId>
|
||||
<version>4.0.60-SNAPSHOT</version>
|
||||
<version>4.0.87-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
@ -49,6 +49,32 @@
|
||||
<warName>api#device-mgt#windows#v1.0</warName>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<destFile>${basedir}/target/coverage-reports/jacoco-unit.exec</destFile>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>jacoco-initialize</id>
|
||||
<goals>
|
||||
<goal>prepare-agent</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>jacoco-site</id>
|
||||
<phase>test</phase>
|
||||
<goals>
|
||||
<goal>report</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<dataFile>${basedir}/target/coverage-reports/jacoco-unit.exec</dataFile>
|
||||
<outputDirectory>${basedir}/target/coverage-reports/site</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
||||
@ -352,11 +352,10 @@ public final class PluginConstants {
|
||||
private WindowsEnrollmentProperties() {
|
||||
throw new AssertionError();
|
||||
}
|
||||
|
||||
public static final String DEVICE_NAME = "DeviceName";
|
||||
public static final String DEVICE_VERSION = "OSVersion";
|
||||
public static final String DEVICE_ID = "DeviceID";
|
||||
public static final String IMEI = "MobileEquipmentId";
|
||||
|
||||
public static final String TYPE = "DeviceType";
|
||||
}
|
||||
}
|
||||
|
||||
@ -38,9 +38,9 @@ public class ChallengeTag {
|
||||
|
||||
public void buildChallengeElement(Document doc, Element rootElement) {
|
||||
Element challenge = doc.createElement(Constants.CHALLENGE);
|
||||
rootElement.appendChild(challenge);
|
||||
if (getMeta() != null) {
|
||||
getMeta().buildMetaElement(doc, challenge);
|
||||
}
|
||||
rootElement.appendChild(challenge);
|
||||
}
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user