mirror of
https://repository.entgra.net/community/device-mgt-core.git
synced 2025-10-06 02:01:45 +00:00
Merge branch 'application-mgt-new' into 'master'
Add new entgra app manager Closes product-iots#104, product-iots#108, product-iots#110, product-iots#111, product-iots#113, product-iots#160, and product-iots#145 See merge request entgra/carbon-device-mgt!361
This commit is contained in:
commit
2e0e8cc96d
14
.gitignore
vendored
14
.gitignore
vendored
@ -26,3 +26,17 @@ target
|
|||||||
|
|
||||||
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
|
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
|
||||||
hs_err_pid*
|
hs_err_pid*
|
||||||
|
components/application-mgt/org.wso2.carbon.device.application.mgt.publisher.ui/react-app/node_modules/
|
||||||
|
components/application-mgt/org.wso2.carbon.device.application.mgt.publisher.ui/react-app/package-lock.json
|
||||||
|
components/application-mgt/org.wso2.carbon.device.application.mgt.publisher.ui/react-app/npm-debug.log
|
||||||
|
components/application-mgt/org.wso2.carbon.device.application.mgt.publisher.ui/react-app/dist/
|
||||||
|
components/application-mgt/org.wso2.carbon.device.application.mgt.publisher.ui/react-app/tmp/
|
||||||
|
components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/react-app/node_modules/
|
||||||
|
components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/react-app/dist/
|
||||||
|
components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/react-app/package-lock.json
|
||||||
|
components/application-mgt/org.wso2.carbon.device.application.mgt.store.ui/react-app/tmp/
|
||||||
|
components/device-mgt/io.entgra.device.mgt.ui/react-app/node_modules/
|
||||||
|
components/device-mgt/io.entgra.device.mgt.ui/react-app/dist/
|
||||||
|
components/device-mgt/io.entgra.device.mgt.ui/react-app/package-lock.json
|
||||||
|
components/device-mgt/io.entgra.device.mgt.ui/react-app/tmp/
|
||||||
|
|
||||||
|
|||||||
@ -21,7 +21,6 @@ package org.wso2.carbon.apimgt.application.extension.api;
|
|||||||
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.StringUtils;
|
||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
import org.apache.commons.logging.LogFactory;
|
import org.apache.commons.logging.LogFactory;
|
||||||
import org.json.simple.JSONObject;
|
|
||||||
import org.wso2.carbon.apimgt.application.extension.APIManagementProviderService;
|
import org.wso2.carbon.apimgt.application.extension.APIManagementProviderService;
|
||||||
import org.wso2.carbon.apimgt.application.extension.api.util.APIUtil;
|
import org.wso2.carbon.apimgt.application.extension.api.util.APIUtil;
|
||||||
import org.wso2.carbon.apimgt.application.extension.api.util.RegistrationProfile;
|
import org.wso2.carbon.apimgt.application.extension.api.util.RegistrationProfile;
|
||||||
@ -32,10 +31,9 @@ import org.wso2.carbon.apimgt.integration.client.OAuthRequestInterceptor;
|
|||||||
import org.wso2.carbon.apimgt.integration.client.store.StoreClient;
|
import org.wso2.carbon.apimgt.integration.client.store.StoreClient;
|
||||||
import org.wso2.carbon.base.MultitenantConstants;
|
import org.wso2.carbon.base.MultitenantConstants;
|
||||||
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
||||||
import org.wso2.carbon.device.mgt.common.DeviceManagementException;
|
import org.wso2.carbon.device.mgt.common.exceptions.DeviceManagementException;
|
||||||
import org.wso2.carbon.user.api.UserStoreException;
|
import org.wso2.carbon.user.api.UserStoreException;
|
||||||
|
|
||||||
import javax.ws.rs.DELETE;
|
|
||||||
import javax.ws.rs.POST;
|
import javax.ws.rs.POST;
|
||||||
import javax.ws.rs.Path;
|
import javax.ws.rs.Path;
|
||||||
import javax.ws.rs.QueryParam;
|
import javax.ws.rs.QueryParam;
|
||||||
|
|||||||
@ -23,7 +23,7 @@ import org.apache.commons.logging.LogFactory;
|
|||||||
import org.wso2.carbon.apimgt.application.extension.APIManagementProviderService;
|
import org.wso2.carbon.apimgt.application.extension.APIManagementProviderService;
|
||||||
import org.wso2.carbon.base.MultitenantConstants;
|
import org.wso2.carbon.base.MultitenantConstants;
|
||||||
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
||||||
import org.wso2.carbon.device.mgt.common.DeviceManagementException;
|
import org.wso2.carbon.device.mgt.common.exceptions.DeviceManagementException;
|
||||||
import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderService;
|
import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderService;
|
||||||
import org.wso2.carbon.registry.api.Resource;
|
import org.wso2.carbon.registry.api.Resource;
|
||||||
import org.wso2.carbon.registry.core.Registry;
|
import org.wso2.carbon.registry.core.Registry;
|
||||||
@ -31,7 +31,6 @@ import org.wso2.carbon.registry.core.exceptions.RegistryException;
|
|||||||
import org.wso2.carbon.registry.core.service.RegistryService;
|
import org.wso2.carbon.registry.core.service.RegistryService;
|
||||||
import org.wso2.carbon.user.core.service.RealmService;
|
import org.wso2.carbon.user.core.service.RealmService;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.StringTokenizer;
|
import java.util.StringTokenizer;
|
||||||
|
|
||||||
@ -44,9 +43,11 @@ public class APIUtil {
|
|||||||
private static final String DEFAULT_CDMF_API_TAG = "device_management";
|
private static final String DEFAULT_CDMF_API_TAG = "device_management";
|
||||||
private static final String DEFAULT_AGENT_API_TAG = "device_agent";
|
private static final String DEFAULT_AGENT_API_TAG = "device_agent";
|
||||||
private static final String DEFAULT_CERT_API_TAG = "scep_management";
|
private static final String DEFAULT_CERT_API_TAG = "scep_management";
|
||||||
|
private static final String DEFAULT_APP_MGT_TAG = "application_management";
|
||||||
|
private static final String DEFAULT_APP_MGT_REVIEW_MGT_TAG = "review_management";
|
||||||
|
private static final String DEFAULT_APP_MGT_SUB_MGT_TAG = "subscription_management";
|
||||||
private static final String DEFAULT_ANALYTICS_ARTIFACT_TAG = "analytics_artifacts_management";
|
private static final String DEFAULT_ANALYTICS_ARTIFACT_TAG = "analytics_artifacts_management";
|
||||||
|
|
||||||
|
|
||||||
public static final String PERMISSION_PROPERTY_NAME = "name";
|
public static final String PERMISSION_PROPERTY_NAME = "name";
|
||||||
|
|
||||||
public static String getAuthenticatedUser() {
|
public static String getAuthenticatedUser() {
|
||||||
@ -111,6 +112,9 @@ public class APIUtil {
|
|||||||
allowedApisTags.add(DEFAULT_CDMF_API_TAG);
|
allowedApisTags.add(DEFAULT_CDMF_API_TAG);
|
||||||
allowedApisTags.add(DEFAULT_CERT_API_TAG);
|
allowedApisTags.add(DEFAULT_CERT_API_TAG);
|
||||||
allowedApisTags.add(DEFAULT_AGENT_API_TAG);
|
allowedApisTags.add(DEFAULT_AGENT_API_TAG);
|
||||||
|
allowedApisTags.add(DEFAULT_APP_MGT_TAG);
|
||||||
|
allowedApisTags.add(DEFAULT_APP_MGT_REVIEW_MGT_TAG);
|
||||||
|
allowedApisTags.add(DEFAULT_APP_MGT_SUB_MGT_TAG);
|
||||||
allowedApisTags.add(DEFAULT_ANALYTICS_ARTIFACT_TAG);
|
allowedApisTags.add(DEFAULT_ANALYTICS_ARTIFACT_TAG);
|
||||||
return allowedApisTags;
|
return allowedApisTags;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2741,7 +2741,7 @@ parameters:
|
|||||||
name: limit
|
name: limit
|
||||||
in: query
|
in: query
|
||||||
description: |
|
description: |
|
||||||
Maximum size of resource array to return.
|
Maximum length of resource array to return.
|
||||||
default: 25
|
default: 25
|
||||||
type: integer
|
type: integer
|
||||||
|
|
||||||
|
|||||||
@ -1823,7 +1823,7 @@ parameters:
|
|||||||
name: limit
|
name: limit
|
||||||
in: query
|
in: query
|
||||||
description: |
|
description: |
|
||||||
Maximum size of resource array to return.
|
Maximum length of resource array to return.
|
||||||
default: 25
|
default: 25
|
||||||
type: integer
|
type: integer
|
||||||
|
|
||||||
|
|||||||
@ -0,0 +1,112 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
|
<parent>
|
||||||
|
<artifactId>application-mgt</artifactId>
|
||||||
|
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||||
|
<version>4.0.0-SNAPSHOT</version>
|
||||||
|
<relativePath>../pom.xml</relativePath>
|
||||||
|
</parent>
|
||||||
|
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<artifactId>org.wso2.carbon.device.application.mgt.addons</artifactId>
|
||||||
|
<version>4.0.0-SNAPSHOT</version>
|
||||||
|
<name>WSO2 Carbon - Application Management Add-Ons</name>
|
||||||
|
<description>WSO2 Carbon - Application Management Add-Ons</description>
|
||||||
|
<url>https://entgra.io</url>
|
||||||
|
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.felix</groupId>
|
||||||
|
<artifactId>maven-scr-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.felix</groupId>
|
||||||
|
<artifactId>maven-bundle-plugin</artifactId>
|
||||||
|
<version>1.4.0</version>
|
||||||
|
<extensions>true</extensions>
|
||||||
|
<configuration>
|
||||||
|
<instructions>
|
||||||
|
<Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
|
||||||
|
<Bundle-Name>${project.artifactId}</Bundle-Name>
|
||||||
|
<Bundle-Version>${carbon.device.mgt.version}</Bundle-Version>
|
||||||
|
<Bundle-Description>Application Management Add-Ons Bundle</Bundle-Description>
|
||||||
|
<Import-Package>
|
||||||
|
com.google.gson,
|
||||||
|
io.swagger.annotations.*;resolution:=optional
|
||||||
|
</Import-Package>
|
||||||
|
<Export-Package>
|
||||||
|
org.wso2.carbon.device.application.mgt.addons.*
|
||||||
|
</Export-Package>
|
||||||
|
</instructions>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
|
||||||
|
<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>org.eclipse.osgi</groupId>
|
||||||
|
<artifactId>org.eclipse.osgi</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.eclipse.equinox</groupId>
|
||||||
|
<artifactId>org.eclipse.equinox.common</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.wso2.carbon</groupId>
|
||||||
|
<artifactId>org.wso2.carbon.logging</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>commons-codec.wso2</groupId>
|
||||||
|
<artifactId>commons-codec</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>commons-io.wso2</groupId>
|
||||||
|
<artifactId>commons-io</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>io.swagger</groupId>
|
||||||
|
<artifactId>swagger-annotations</artifactId>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.json.wso2</groupId>
|
||||||
|
<artifactId>json</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.google.code.gson</groupId>
|
||||||
|
<artifactId>gson</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||||
|
<artifactId>org.wso2.carbon.device.application.mgt.common</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>javax.servlet</groupId>
|
||||||
|
<artifactId>javax.servlet-api</artifactId>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.hibernate</groupId>
|
||||||
|
<artifactId>hibernate-validator</artifactId>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
</project>
|
||||||
@ -0,0 +1,46 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.addons;
|
||||||
|
|
||||||
|
|
||||||
|
import javax.servlet.Filter;
|
||||||
|
import javax.servlet.FilterChain;
|
||||||
|
import javax.servlet.FilterConfig;
|
||||||
|
import javax.servlet.ServletException;
|
||||||
|
import javax.servlet.ServletRequest;
|
||||||
|
import javax.servlet.ServletResponse;
|
||||||
|
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,53 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.addons;
|
||||||
|
|
||||||
|
|
||||||
|
import javax.ws.rs.WebApplicationException;
|
||||||
|
import javax.ws.rs.core.StreamingOutput;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.io.OutputStream;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* org.wso2.carbon.device.application.mgt.addons.FileStreamingOutput to allow the user to send the files as Stream.
|
||||||
|
*/
|
||||||
|
public class FileStreamingOutput implements StreamingOutput {
|
||||||
|
private InputStream inputStream;
|
||||||
|
|
||||||
|
public FileStreamingOutput(InputStream inputStream) {
|
||||||
|
this.inputStream = inputStream;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void write(OutputStream outputStream) throws IOException, WebApplicationException {
|
||||||
|
try {
|
||||||
|
byte[] buffer = new byte[inputStream.available()];
|
||||||
|
inputStream.read(buffer);
|
||||||
|
outputStream.write(buffer);
|
||||||
|
outputStream.flush();
|
||||||
|
} finally {
|
||||||
|
if (inputStream != null) {
|
||||||
|
inputStream.close();
|
||||||
|
}
|
||||||
|
if (outputStream != null) {
|
||||||
|
outputStream.close();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -1,7 +1,6 @@
|
|||||||
/*
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
|
||||||
*
|
*
|
||||||
* WSO2 Inc. licenses this file to you under the Apache License,
|
* Entgra (Pvt) Ltd. licenses this file to you under the Apache License,
|
||||||
* Version 2.0 (the "License"); you may not use this file except
|
* Version 2.0 (the "License"); you may not use this file except
|
||||||
* in compliance with the License.
|
* in compliance with the License.
|
||||||
* You may obtain a copy of the License at
|
* You may obtain a copy of the License at
|
||||||
@ -15,12 +14,11 @@
|
|||||||
* specific language governing permissions and limitations
|
* specific language governing permissions and limitations
|
||||||
* under the License.
|
* under the License.
|
||||||
*/
|
*/
|
||||||
|
package org.wso2.carbon.device.application.mgt.addons;
|
||||||
package org.wso2.carbon.certificate.mgt.jaxrs.api.common;
|
|
||||||
|
|
||||||
|
|
||||||
import com.google.gson.Gson;
|
import com.google.gson.Gson;
|
||||||
import com.google.gson.GsonBuilder;
|
import com.google.gson.GsonBuilder;
|
||||||
|
import org.wso2.carbon.device.application.mgt.addons.jaxrs.AnnotationExclusionStrategy;
|
||||||
|
|
||||||
import javax.ws.rs.Consumes;
|
import javax.ws.rs.Consumes;
|
||||||
import javax.ws.rs.Produces;
|
import javax.ws.rs.Produces;
|
||||||
@ -30,16 +28,23 @@ import javax.ws.rs.core.MultivaluedMap;
|
|||||||
import javax.ws.rs.ext.MessageBodyReader;
|
import javax.ws.rs.ext.MessageBodyReader;
|
||||||
import javax.ws.rs.ext.MessageBodyWriter;
|
import javax.ws.rs.ext.MessageBodyWriter;
|
||||||
import javax.ws.rs.ext.Provider;
|
import javax.ws.rs.ext.Provider;
|
||||||
import java.io.*;
|
import java.io.IOException;
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.io.InputStreamReader;
|
||||||
|
import java.io.OutputStream;
|
||||||
|
import java.io.OutputStreamWriter;
|
||||||
import java.lang.annotation.Annotation;
|
import java.lang.annotation.Annotation;
|
||||||
import java.lang.reflect.Type;
|
import java.lang.reflect.Type;
|
||||||
|
|
||||||
import static javax.ws.rs.core.MediaType.APPLICATION_JSON;
|
import static javax.ws.rs.core.MediaType.APPLICATION_JSON;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This provider is used to change a JSON object to complex object and inversely in request and response.
|
||||||
|
*/
|
||||||
@Provider
|
@Provider
|
||||||
@Produces(APPLICATION_JSON)
|
@Produces(APPLICATION_JSON)
|
||||||
@Consumes(APPLICATION_JSON)
|
@Consumes(APPLICATION_JSON)
|
||||||
public class GsonMessageBodyHandler implements MessageBodyWriter<Object>, MessageBodyReader<Object> {
|
public class JSONMessageHandler implements MessageBodyWriter<Object>, MessageBodyReader<Object> {
|
||||||
|
|
||||||
private Gson gson;
|
private Gson gson;
|
||||||
private static final String UTF_8 = "UTF-8";
|
private static final String UTF_8 = "UTF-8";
|
||||||
@ -50,7 +55,9 @@ public class GsonMessageBodyHandler implements MessageBodyWriter<Object>, Messag
|
|||||||
|
|
||||||
private Gson getGson() {
|
private Gson getGson() {
|
||||||
if (gson == null) {
|
if (gson == null) {
|
||||||
final GsonBuilder gsonBuilder = new GsonBuilder();
|
final GsonBuilder gsonBuilder = new GsonBuilder()
|
||||||
|
.setDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz")
|
||||||
|
.setExclusionStrategies(new AnnotationExclusionStrategy());
|
||||||
gson = gsonBuilder.create();
|
gson = gsonBuilder.create();
|
||||||
}
|
}
|
||||||
return gson;
|
return gson;
|
||||||
@ -59,13 +66,8 @@ public class GsonMessageBodyHandler implements MessageBodyWriter<Object>, Messag
|
|||||||
public Object readFrom(Class<Object> objectClass, Type type, Annotation[] annotations, MediaType mediaType,
|
public Object readFrom(Class<Object> objectClass, Type type, Annotation[] annotations, MediaType mediaType,
|
||||||
MultivaluedMap<String, String> stringStringMultivaluedMap, InputStream entityStream)
|
MultivaluedMap<String, String> stringStringMultivaluedMap, InputStream entityStream)
|
||||||
throws IOException, WebApplicationException {
|
throws IOException, WebApplicationException {
|
||||||
|
try (InputStreamReader reader = new InputStreamReader(entityStream, UTF_8)) {
|
||||||
InputStreamReader reader = new InputStreamReader(entityStream, "UTF-8");
|
|
||||||
|
|
||||||
try {
|
|
||||||
return getGson().fromJson(reader, type);
|
return getGson().fromJson(reader, type);
|
||||||
} finally {
|
|
||||||
reader.close();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -80,12 +82,8 @@ public class GsonMessageBodyHandler implements MessageBodyWriter<Object>, Messag
|
|||||||
public void writeTo(Object object, Class<?> aClass, Type type, Annotation[] annotations, MediaType mediaType,
|
public void writeTo(Object object, Class<?> aClass, Type type, Annotation[] annotations, MediaType mediaType,
|
||||||
MultivaluedMap<String, Object> stringObjectMultivaluedMap, OutputStream entityStream)
|
MultivaluedMap<String, Object> stringObjectMultivaluedMap, OutputStream entityStream)
|
||||||
throws IOException, WebApplicationException {
|
throws IOException, WebApplicationException {
|
||||||
|
try (OutputStreamWriter writer = new OutputStreamWriter(entityStream, UTF_8)) {
|
||||||
OutputStreamWriter writer = new OutputStreamWriter(entityStream, UTF_8);
|
|
||||||
try {
|
|
||||||
getGson().toJson(object, type, writer);
|
getGson().toJson(object, type, writer);
|
||||||
} finally {
|
|
||||||
writer.close();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -0,0 +1,71 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.addons;
|
||||||
|
|
||||||
|
import com.google.gson.Gson;
|
||||||
|
import com.google.gson.GsonBuilder;
|
||||||
|
import com.google.gson.JsonObject;
|
||||||
|
import com.google.gson.JsonParser;
|
||||||
|
import org.apache.cxf.jaxrs.ext.multipart.Attachment;
|
||||||
|
import org.wso2.carbon.device.application.mgt.addons.jaxrs.AnnotationExclusionStrategy;
|
||||||
|
|
||||||
|
import javax.ws.rs.Consumes;
|
||||||
|
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.Provider;
|
||||||
|
import java.io.ByteArrayOutputStream;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.lang.annotation.Annotation;
|
||||||
|
import java.lang.reflect.Type;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Provider for the text/plain type of input. Particularly use-ful for the complex objects sent along with Multipart
|
||||||
|
* request.
|
||||||
|
*/
|
||||||
|
@Provider
|
||||||
|
@Consumes(MediaType.TEXT_PLAIN)
|
||||||
|
public class MultipartCustomProvider implements MessageBodyReader<Object> {
|
||||||
|
private Gson gson;
|
||||||
|
|
||||||
|
public MultipartCustomProvider() {
|
||||||
|
final GsonBuilder gsonBuilder = new GsonBuilder().setDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz")
|
||||||
|
.setExclusionStrategies(new AnnotationExclusionStrategy());
|
||||||
|
gson = gsonBuilder.create();
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public boolean isReadable(Class<?> aClass, Type type, Annotation[] annotations, MediaType mediaType) {
|
||||||
|
return !aClass.equals(Attachment.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Object readFrom(Class<Object> objectClass, Type type, Annotation[] annotations, MediaType mediaType,
|
||||||
|
MultivaluedMap<String, String> headers, InputStream inputStream) throws IOException,
|
||||||
|
WebApplicationException {
|
||||||
|
ByteArrayOutputStream result = new ByteArrayOutputStream();
|
||||||
|
byte[] buffer = new byte[1024];
|
||||||
|
int length;
|
||||||
|
while ((length = inputStream.read(buffer)) != -1) {
|
||||||
|
result.write(buffer, 0, length);
|
||||||
|
}
|
||||||
|
String jsonString = result.toString();
|
||||||
|
JsonObject obj = new JsonParser().parse(jsonString).getAsJsonObject();
|
||||||
|
return gson.fromJson(obj, type);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -1,7 +1,6 @@
|
|||||||
/*
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
|
||||||
*
|
*
|
||||||
* WSO2 Inc. licenses this file to you under the Apache License,
|
* Entgra (Pvt) Ltd. licenses this file to you under the Apache License,
|
||||||
* Version 2.0 (the "License"); you may not use this file except
|
* Version 2.0 (the "License"); you may not use this file except
|
||||||
* in compliance with the License.
|
* in compliance with the License.
|
||||||
* You may obtain a copy of the License at
|
* You may obtain a copy of the License at
|
||||||
@ -15,8 +14,7 @@
|
|||||||
* specific language governing permissions and limitations
|
* specific language governing permissions and limitations
|
||||||
* under the License.
|
* under the License.
|
||||||
*/
|
*/
|
||||||
|
package org.wso2.carbon.device.application.mgt.addons;
|
||||||
package org.wso2.carbon.device.mgt.jaxrs.exception;
|
|
||||||
|
|
||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
import org.apache.commons.logging.LogFactory;
|
import org.apache.commons.logging.LogFactory;
|
||||||
@ -30,6 +28,7 @@ import org.apache.cxf.phase.AbstractPhaseInterceptor;
|
|||||||
import org.apache.cxf.phase.Phase;
|
import org.apache.cxf.phase.Phase;
|
||||||
|
|
||||||
import javax.validation.ConstraintViolation;
|
import javax.validation.ConstraintViolation;
|
||||||
|
import javax.validation.ConstraintViolationException;
|
||||||
import javax.validation.Validation;
|
import javax.validation.Validation;
|
||||||
import javax.validation.Validator;
|
import javax.validation.Validator;
|
||||||
import javax.validation.ValidatorFactory;
|
import javax.validation.ValidatorFactory;
|
||||||
@ -0,0 +1,36 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.addons.jaxrs;
|
||||||
|
|
||||||
|
import com.google.gson.ExclusionStrategy;
|
||||||
|
import com.google.gson.FieldAttributes;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This class is used to exclude certain fields when serializing and de-serializing based on the annotation.
|
||||||
|
*/
|
||||||
|
public class AnnotationExclusionStrategy implements ExclusionStrategy {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean shouldSkipField(FieldAttributes f) {
|
||||||
|
return f.getAnnotation(Exclude.class) != null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean shouldSkipClass(Class<?> clazz) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,30 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.addons.jaxrs;
|
||||||
|
|
||||||
|
import java.lang.annotation.ElementType;
|
||||||
|
import java.lang.annotation.Retention;
|
||||||
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This class is the representation of custom developed Exclude annotation.
|
||||||
|
*/
|
||||||
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
|
@Target(ElementType.FIELD)
|
||||||
|
public @interface Exclude {
|
||||||
|
}
|
||||||
@ -1,82 +1,48 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!--
|
<!--
|
||||||
~ /*
|
* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
~ * Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
*
|
||||||
~ *
|
* Entgra (Pvt) Ltd. licenses this file to you under the Apache License,
|
||||||
~ * WSO2 Inc. licenses this file to you under the Apache License,
|
* Version 2.0 (the "License"); you may not use this file except
|
||||||
~ * Version 2.0 (the "License"); you may not use this file except
|
* in compliance with the License.
|
||||||
~ * in compliance with the License.
|
* You may obtain a copy of the License at
|
||||||
~ * You may obtain a copy of the License at
|
*
|
||||||
~ *
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
~ * http://www.apache.org/licenses/LICENSE-2.0
|
*
|
||||||
~ *
|
* Unless required by applicable law or agreed to in writing,
|
||||||
~ * Unless required by applicable law or agreed to in writing,
|
* software distributed under the License is distributed on an
|
||||||
~ * software distributed under the License is distributed on an
|
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
~ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
* KIND, either express or implied. See the License for the
|
||||||
~ * KIND, either express or implied. See the License for the
|
* specific language governing permissions and limitations
|
||||||
~ * specific language governing permissions and limitations
|
* under the License.
|
||||||
~ * 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">
|
<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>
|
<parent>
|
||||||
<artifactId>certificate-mgt</artifactId>
|
<artifactId>application-mgt</artifactId>
|
||||||
<groupId>org.wso2.carbon.devicemgt</groupId>
|
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||||
<version>4.0.0-SNAPSHOT</version>
|
<version>4.0.0-SNAPSHOT</version>
|
||||||
<relativePath>../pom.xml</relativePath>
|
<relativePath>../pom.xml</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
<artifactId>org.wso2.carbon.certificate.mgt.cert.admin.v09.api</artifactId>
|
<artifactId>org.wso2.carbon.device.application.mgt.api</artifactId>
|
||||||
|
<version>4.0.0-SNAPSHOT</version>
|
||||||
<packaging>war</packaging>
|
<packaging>war</packaging>
|
||||||
<name>WSO2 Carbon - Admin Certificate Management v09 API</name>
|
<name>WSO2 Carbon - Application Management API</name>
|
||||||
<description>WSO2 Carbon - Admin Certificate Management v09 API</description>
|
<description>WSO2 Carbon - Application Management API</description>
|
||||||
<url>http://wso2.org</url>
|
<url>https://entgra.io</url>
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
<plugins>
|
<plugins>
|
||||||
<plugin>
|
|
||||||
<artifactId>maven-compiler-plugin</artifactId>
|
|
||||||
<configuration>
|
|
||||||
<source>1.8</source>
|
|
||||||
<target>1.8</target>
|
|
||||||
</configuration>
|
|
||||||
</plugin>
|
|
||||||
<plugin>
|
<plugin>
|
||||||
<artifactId>maven-war-plugin</artifactId>
|
<artifactId>maven-war-plugin</artifactId>
|
||||||
<configuration>
|
<configuration>
|
||||||
<packagingExcludes>WEB-INF/lib/*cxf*.jar</packagingExcludes>
|
<packagingExcludes>WEB-INF/lib/*cxf*.jar</packagingExcludes>
|
||||||
<warName>api#certificate-mgt#v0.9</warName>
|
<warName>api#application-mgt#v1.0</warName>
|
||||||
</configuration>
|
</configuration>
|
||||||
</plugin>
|
</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>
|
</plugins>
|
||||||
</build>
|
</build>
|
||||||
|
|
||||||
@ -89,7 +55,7 @@
|
|||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<artifactId>maven-antrun-plugin</artifactId>
|
<artifactId>maven-antrun-plugin</artifactId>
|
||||||
<version>1.7</version>
|
<version>1.8</version>
|
||||||
<executions>
|
<executions>
|
||||||
<execution>
|
<execution>
|
||||||
<phase>compile</phase>
|
<phase>compile</phase>
|
||||||
@ -100,7 +66,7 @@
|
|||||||
<tasks>
|
<tasks>
|
||||||
<copy todir="${basedir}/../../../repository/deployment/server/webapps" overwrite="true">
|
<copy todir="${basedir}/../../../repository/deployment/server/webapps" overwrite="true">
|
||||||
<fileset dir="${basedir}/target">
|
<fileset dir="${basedir}/target">
|
||||||
<include name="api#certificate-mgt#v0.9.war" />
|
<include name="api#application-mgt#v1.0.war" />
|
||||||
</fileset>
|
</fileset>
|
||||||
</copy>
|
</copy>
|
||||||
</tasks>
|
</tasks>
|
||||||
@ -119,7 +85,7 @@
|
|||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.codehaus.mojo</groupId>
|
<groupId>org.codehaus.mojo</groupId>
|
||||||
<artifactId>exec-maven-plugin</artifactId>
|
<artifactId>exec-maven-plugin</artifactId>
|
||||||
<version>1.2.1</version>
|
<version>1.5.0</version>
|
||||||
<executions>
|
<executions>
|
||||||
<execution>
|
<execution>
|
||||||
<phase>test</phase>
|
<phase>test</phase>
|
||||||
@ -138,48 +104,63 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.cxf</groupId>
|
<groupId>org.apache.cxf</groupId>
|
||||||
<artifactId>cxf-rt-frontend-jaxws</artifactId>
|
<artifactId>cxf-rt-frontend-jaxws</artifactId>
|
||||||
</dependency>
|
<scope>provided</scope>
|
||||||
<dependency>
|
|
||||||
<groupId>commons-codec.wso2</groupId>
|
|
||||||
<artifactId>commons-codec</artifactId>
|
|
||||||
<exclusions>
|
|
||||||
<exclusion>
|
|
||||||
<groupId>commons-codec</groupId>
|
|
||||||
<artifactId>commons-codec</artifactId>
|
|
||||||
</exclusion>
|
|
||||||
</exclusions>
|
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.cxf</groupId>
|
<groupId>org.apache.cxf</groupId>
|
||||||
<artifactId>cxf-rt-frontend-jaxrs</artifactId>
|
<artifactId>cxf-rt-frontend-jaxrs</artifactId>
|
||||||
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.cxf</groupId>
|
<groupId>org.apache.cxf</groupId>
|
||||||
<artifactId>cxf-rt-transports-http</artifactId>
|
<artifactId>cxf-rt-transports-http</artifactId>
|
||||||
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>junit</groupId>
|
<groupId>junit</groupId>
|
||||||
<artifactId>junit</artifactId>
|
<artifactId>junit</artifactId>
|
||||||
<scope>test</scope>
|
<scope>test</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.codehaus.jackson</groupId>
|
||||||
|
<artifactId>jackson-jaxrs</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.codehaus.jackson</groupId>
|
||||||
|
<artifactId>jackson-core-asl</artifactId>
|
||||||
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>javax.ws.rs</groupId>
|
<groupId>javax.ws.rs</groupId>
|
||||||
<artifactId>jsr311-api</artifactId>
|
<artifactId>jsr311-api</artifactId>
|
||||||
<scope>provided</scope>
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.wso2.carbon</groupId>
|
||||||
|
<artifactId>org.wso2.carbon.utils</artifactId>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.wso2.carbon</groupId>
|
<groupId>org.wso2.carbon</groupId>
|
||||||
<artifactId>org.wso2.carbon.logging</artifactId>
|
<artifactId>org.wso2.carbon.logging</artifactId>
|
||||||
<scope>provided</scope>
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.wso2.carbon.devicemgt</groupId>
|
<groupId>org.json.wso2</groupId>
|
||||||
<artifactId>org.wso2.carbon.certificate.mgt.core</artifactId>
|
<artifactId>json</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>commons-codec.wso2</groupId>
|
||||||
|
<artifactId>commons-codec</artifactId>
|
||||||
<scope>provided</scope>
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.wso2.carbon.devicemgt</groupId>
|
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||||
<artifactId>org.wso2.carbon.identity.jwt.client.extension</artifactId>
|
<artifactId>org.wso2.carbon.device.application.mgt.core</artifactId>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||||
|
<artifactId>org.wso2.carbon.device.application.mgt.common</artifactId>
|
||||||
<scope>provided</scope>
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
@ -190,25 +171,41 @@
|
|||||||
<groupId>io.swagger</groupId>
|
<groupId>io.swagger</groupId>
|
||||||
<artifactId>swagger-core</artifactId>
|
<artifactId>swagger-core</artifactId>
|
||||||
<exclusions>
|
<exclusions>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>com.fasterxml.jackson.module</groupId>
|
||||||
|
<artifactId>jackson-module-jaxb-annotations</artifactId>
|
||||||
|
</exclusion>
|
||||||
<exclusion>
|
<exclusion>
|
||||||
<groupId>org.slf4j</groupId>
|
<groupId>org.slf4j</groupId>
|
||||||
<artifactId>slf4j-api</artifactId>
|
<artifactId>slf4j-api</artifactId>
|
||||||
</exclusion>
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.wso2.orbit.com.fasterxml.jackson.core</groupId>
|
||||||
|
<artifactId>jackson-core</artifactId>
|
||||||
|
</exclusion>
|
||||||
</exclusions>
|
</exclusions>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>io.swagger</groupId>
|
<groupId>io.swagger</groupId>
|
||||||
<artifactId>swagger-jaxrs</artifactId>
|
<artifactId>swagger-jaxrs</artifactId>
|
||||||
<exclusions>
|
<exclusions>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>com.fasterxml.jackson.module</groupId>
|
||||||
|
<artifactId>jackson-module-jaxb-annotations</artifactId>
|
||||||
|
</exclusion>
|
||||||
<exclusion>
|
<exclusion>
|
||||||
<groupId>org.slf4j</groupId>
|
<groupId>org.slf4j</groupId>
|
||||||
<artifactId>slf4j-api</artifactId>
|
<artifactId>slf4j-api</artifactId>
|
||||||
</exclusion>
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.wso2.orbit.com.fasterxml.jackson.core</groupId>
|
||||||
|
<artifactId>jackson-core</artifactId>
|
||||||
|
</exclusion>
|
||||||
</exclusions>
|
</exclusions>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>javax.servlet</groupId>
|
<groupId>javax.servlet</groupId>
|
||||||
<artifactId>servlet-api</artifactId>
|
<artifactId>javax.servlet-api</artifactId>
|
||||||
<scope>provided</scope>
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
@ -216,6 +213,13 @@
|
|||||||
<artifactId>org.wso2.carbon.apimgt.annotations</artifactId>
|
<artifactId>org.wso2.carbon.apimgt.annotations</artifactId>
|
||||||
<scope>provided</scope>
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.wso2.orbit.com.fasterxml.jackson.core</groupId>
|
||||||
|
<artifactId>jackson-annotations</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||||
|
<artifactId>org.wso2.carbon.device.application.mgt.addons</artifactId>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
</project>
|
</project>
|
||||||
@ -0,0 +1,134 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.api.services;
|
||||||
|
|
||||||
|
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.Extension;
|
||||||
|
import io.swagger.annotations.ExtensionProperty;
|
||||||
|
import io.swagger.annotations.Info;
|
||||||
|
import io.swagger.annotations.SwaggerDefinition;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.ApplicationList;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.ErrorResponse;
|
||||||
|
|
||||||
|
import javax.ws.rs.GET;
|
||||||
|
import javax.ws.rs.Path;
|
||||||
|
import javax.ws.rs.PathParam;
|
||||||
|
import javax.ws.rs.Produces;
|
||||||
|
import javax.ws.rs.core.MediaType;
|
||||||
|
import javax.ws.rs.core.Response;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* APIs to handle application management related tasks.
|
||||||
|
*/
|
||||||
|
@SwaggerDefinition(
|
||||||
|
info = @Info(
|
||||||
|
version = "1.0.0",
|
||||||
|
title = "Application Management Artifact Download Service",
|
||||||
|
extensions = {
|
||||||
|
@Extension(properties = {
|
||||||
|
@ExtensionProperty(name = "name", value = "ApplicationManagementArtifactDownloadService"),
|
||||||
|
@ExtensionProperty(name = "context", value = "/api/application-mgt/v1.0/artifact"),
|
||||||
|
})
|
||||||
|
}
|
||||||
|
)
|
||||||
|
)
|
||||||
|
@Path("/artifact")
|
||||||
|
@Api(value = "ApplicationDTO Management Artifact Downloading Service")
|
||||||
|
@Produces(MediaType.APPLICATION_JSON)
|
||||||
|
public interface ArtifactDownloadAPI {
|
||||||
|
|
||||||
|
@GET
|
||||||
|
@Path("/{tenantId}/{uuid}/{folderName}/{fileName}")
|
||||||
|
@Produces(MediaType.APPLICATION_OCTET_STREAM)
|
||||||
|
@ApiOperation(
|
||||||
|
produces = MediaType.APPLICATION_OCTET_STREAM,
|
||||||
|
httpMethod = "GET",
|
||||||
|
value = "get application management UI configuration",
|
||||||
|
notes = "This will get all UI configuration of application management"
|
||||||
|
)
|
||||||
|
@ApiResponses(
|
||||||
|
value = {
|
||||||
|
@ApiResponse(
|
||||||
|
code = 200,
|
||||||
|
message = "OK. \n Successfully got UI config.",
|
||||||
|
response = ApplicationList.class),
|
||||||
|
@ApiResponse(
|
||||||
|
code = 404,
|
||||||
|
message = "Not Found. There doesn't have an defined UI config." +
|
||||||
|
"query."),
|
||||||
|
@ApiResponse(
|
||||||
|
code = 500,
|
||||||
|
message = "Internal Server Error. \n Error occurred while getting the UI config.",
|
||||||
|
response = ErrorResponse.class)
|
||||||
|
})
|
||||||
|
Response getArtifact(
|
||||||
|
@ApiParam(
|
||||||
|
name = "tenantId",
|
||||||
|
value = "Tenant Id of the application artifact belongs.",
|
||||||
|
required = true)
|
||||||
|
@PathParam("tenantId") int tenantId,
|
||||||
|
@ApiParam(
|
||||||
|
name = "uuid",
|
||||||
|
value = "UUID of the application release.",
|
||||||
|
required = true)
|
||||||
|
@PathParam("uuid") String uuid,
|
||||||
|
@ApiParam(
|
||||||
|
name = "folderName",
|
||||||
|
value = "Name of the folder where the artifact store.",
|
||||||
|
required = true)
|
||||||
|
@PathParam("folderName") String folderName,
|
||||||
|
@ApiParam(
|
||||||
|
name = "fileName",
|
||||||
|
value = "Name of the artifact",
|
||||||
|
required = true)
|
||||||
|
@PathParam("fileName") String fileName);
|
||||||
|
|
||||||
|
@GET
|
||||||
|
@Path("/plist/{uuid}")
|
||||||
|
@Produces(MediaType.TEXT_XML)
|
||||||
|
@ApiOperation(
|
||||||
|
produces = MediaType.TEXT_XML,
|
||||||
|
httpMethod = "GET",
|
||||||
|
value = "Get plist artifact content of an application",
|
||||||
|
notes = "Get plist artifact content of an application"
|
||||||
|
)
|
||||||
|
@ApiResponses(
|
||||||
|
value = {
|
||||||
|
@ApiResponse(
|
||||||
|
code = 200,
|
||||||
|
message = "OK. \n Successfully retrieved plist artifact content.",
|
||||||
|
response = ApplicationList.class),
|
||||||
|
@ApiResponse(
|
||||||
|
code = 404,
|
||||||
|
message = "Not Found. Plist artifact content not found for the application."),
|
||||||
|
@ApiResponse(
|
||||||
|
code = 500,
|
||||||
|
message = "Internal Server Error. \n Error occurred while retrieving plist artifact content.",
|
||||||
|
response = ErrorResponse.class)
|
||||||
|
})
|
||||||
|
Response getPlistArtifact(
|
||||||
|
@ApiParam(
|
||||||
|
name = "uuid",
|
||||||
|
value = "UUID of the application release.",
|
||||||
|
required = true)
|
||||||
|
@PathParam("uuid") String uuid);
|
||||||
|
}
|
||||||
@ -0,0 +1,83 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.api.services;
|
||||||
|
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
import io.swagger.annotations.ApiResponse;
|
||||||
|
import io.swagger.annotations.ApiResponses;
|
||||||
|
import io.swagger.annotations.Extension;
|
||||||
|
import io.swagger.annotations.ExtensionProperty;
|
||||||
|
import io.swagger.annotations.Info;
|
||||||
|
import io.swagger.annotations.SwaggerDefinition;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.*;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.ErrorResponse;
|
||||||
|
|
||||||
|
import javax.ws.rs.GET;
|
||||||
|
import javax.ws.rs.Path;
|
||||||
|
import javax.ws.rs.Produces;
|
||||||
|
import javax.ws.rs.core.MediaType;
|
||||||
|
import javax.ws.rs.core.Response;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* APIs to handle application management related tasks.
|
||||||
|
*/
|
||||||
|
@SwaggerDefinition(
|
||||||
|
info = @Info(
|
||||||
|
version = "1.0.0",
|
||||||
|
title = "Application Management Config Retrieve Service",
|
||||||
|
extensions = {
|
||||||
|
@Extension(properties = {
|
||||||
|
@ExtensionProperty(name = "name", value = "ApplicationManagementConfigRetrieveService"),
|
||||||
|
@ExtensionProperty(name = "context", value = "/api/application-mgt/v1.0/config"),
|
||||||
|
})
|
||||||
|
}
|
||||||
|
)
|
||||||
|
)
|
||||||
|
@Path("/config")
|
||||||
|
@Api(value = "ApplicationDTO Management Common Service")
|
||||||
|
@Produces(MediaType.APPLICATION_JSON)
|
||||||
|
public interface ConfigRetrieveAPI {
|
||||||
|
|
||||||
|
@GET
|
||||||
|
@Path("/ui-config")
|
||||||
|
@Produces(MediaType.APPLICATION_JSON)
|
||||||
|
@ApiOperation(
|
||||||
|
consumes = MediaType.APPLICATION_JSON,
|
||||||
|
produces = MediaType.APPLICATION_JSON,
|
||||||
|
httpMethod = "GET",
|
||||||
|
value = "get application management UI configuration",
|
||||||
|
notes = "This will get all UI configuration of application management"
|
||||||
|
)
|
||||||
|
@ApiResponses(
|
||||||
|
value = {
|
||||||
|
@ApiResponse(
|
||||||
|
code = 200,
|
||||||
|
message = "OK. \n Successfully got UI config.",
|
||||||
|
response = ApplicationList.class),
|
||||||
|
@ApiResponse(
|
||||||
|
code = 404,
|
||||||
|
message = "Not Found. There doesn't have an defined UI config." +
|
||||||
|
"query."),
|
||||||
|
@ApiResponse(
|
||||||
|
code = 500,
|
||||||
|
message = "Internal Server Error. \n Error occurred while getting the UI config.",
|
||||||
|
response = ErrorResponse.class)
|
||||||
|
})
|
||||||
|
Response getUiConfig();
|
||||||
|
}
|
||||||
@ -0,0 +1,99 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.api.services.impl;
|
||||||
|
|
||||||
|
import org.apache.commons.logging.Log;
|
||||||
|
import org.apache.commons.logging.LogFactory;
|
||||||
|
import org.wso2.carbon.device.application.mgt.api.services.ArtifactDownloadAPI;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.exception.ApplicationManagementException;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.services.ApplicationManager;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.services.AppmDataHandler;
|
||||||
|
import org.wso2.carbon.device.application.mgt.core.exception.BadRequestException;
|
||||||
|
import org.wso2.carbon.device.application.mgt.core.exception.NotFoundException;
|
||||||
|
import org.wso2.carbon.device.application.mgt.core.util.APIUtil;
|
||||||
|
|
||||||
|
import javax.ws.rs.GET;
|
||||||
|
import javax.ws.rs.Path;
|
||||||
|
import javax.ws.rs.PathParam;
|
||||||
|
import javax.ws.rs.Produces;
|
||||||
|
import javax.ws.rs.core.MediaType;
|
||||||
|
import javax.ws.rs.core.Response;
|
||||||
|
import java.io.InputStream;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Implementation of ApplicationDTO Management related APIs.
|
||||||
|
*/
|
||||||
|
@Produces({"application/json"})
|
||||||
|
@Path("/artifact")
|
||||||
|
public class ArtifactDownloadAPIImpl implements ArtifactDownloadAPI {
|
||||||
|
|
||||||
|
private static Log log = LogFactory.getLog(ArtifactDownloadAPIImpl.class);
|
||||||
|
|
||||||
|
@GET
|
||||||
|
@Override
|
||||||
|
@Produces(MediaType.APPLICATION_OCTET_STREAM)
|
||||||
|
@Path("/{tenantId}/{uuid}/{folderName}/{fileName}")
|
||||||
|
public Response getArtifact(
|
||||||
|
@PathParam("tenantId") int tenantId,
|
||||||
|
@PathParam("uuid") String uuid,
|
||||||
|
@PathParam("folderName") String folderName,
|
||||||
|
@PathParam("fileName") String fileName) {
|
||||||
|
AppmDataHandler dataHandler = APIUtil.getDataHandler();
|
||||||
|
try {
|
||||||
|
InputStream fileInputStream = dataHandler.getArtifactStream(tenantId, uuid, folderName, fileName);
|
||||||
|
Response.ResponseBuilder response = Response
|
||||||
|
.ok(fileInputStream, MediaType.APPLICATION_OCTET_STREAM);
|
||||||
|
response.status(Response.Status.OK);
|
||||||
|
response.header("Content-Disposition", "attachment; filename=\"" + fileName + "\"");
|
||||||
|
return response.build();
|
||||||
|
} catch (NotFoundException e) {
|
||||||
|
String msg = "Couldn't find an application release for UUID: " + uuid + " and file name: " + fileName;
|
||||||
|
log.error(msg, e);
|
||||||
|
return Response.status(Response.Status.NOT_FOUND).entity(msg).build();
|
||||||
|
} catch (BadRequestException e) {
|
||||||
|
String msg = "Invalid data is used with the request to get input stream of the application release. UUID: "
|
||||||
|
+ uuid + " and file name: " + fileName;
|
||||||
|
log.error(msg, e);
|
||||||
|
return Response.status(Response.Status.BAD_REQUEST).entity(msg).build();
|
||||||
|
} catch (ApplicationManagementException e) {
|
||||||
|
String msg = "Error occurred while getting the application release artifact file. ";
|
||||||
|
log.error(msg, e);
|
||||||
|
return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@GET
|
||||||
|
@Override
|
||||||
|
@Produces(MediaType.TEXT_XML)
|
||||||
|
@Path("/plist/{uuid}")
|
||||||
|
public Response getPlistArtifact(@PathParam("uuid") String uuid) {
|
||||||
|
ApplicationManager applicationManager = APIUtil.getApplicationManager();
|
||||||
|
try {
|
||||||
|
String plistContent = applicationManager.getPlistArtifact(uuid);
|
||||||
|
return Response.status(Response.Status.OK).entity(plistContent).build();
|
||||||
|
} catch (NotFoundException e) {
|
||||||
|
String msg = "Couldn't find an application release for UUID: " + uuid;
|
||||||
|
log.error(msg, e);
|
||||||
|
return Response.status(Response.Status.NOT_FOUND).entity(msg).build();
|
||||||
|
} catch (ApplicationManagementException e) {
|
||||||
|
String msg = "Error occurred while getting the application plist artifact file.";
|
||||||
|
log.error(msg, e);
|
||||||
|
return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,57 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.api.services.impl;
|
||||||
|
|
||||||
|
import org.apache.commons.logging.Log;
|
||||||
|
import org.apache.commons.logging.LogFactory;
|
||||||
|
import org.wso2.carbon.device.application.mgt.api.services.ConfigRetrieveAPI;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.config.UIConfiguration;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.exception.LifecycleManagementException;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.services.AppmDataHandler;
|
||||||
|
import org.wso2.carbon.device.application.mgt.core.util.APIUtil;
|
||||||
|
|
||||||
|
import javax.ws.rs.Consumes;
|
||||||
|
import javax.ws.rs.GET;
|
||||||
|
import javax.ws.rs.Path;
|
||||||
|
import javax.ws.rs.Produces;
|
||||||
|
import javax.ws.rs.core.Response;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Implementation of ApplicationDTO Management related APIs.
|
||||||
|
*/
|
||||||
|
@Produces({"application/json"})
|
||||||
|
@Path("/config")
|
||||||
|
public class ConfigRetrieveAPIImpl implements ConfigRetrieveAPI {
|
||||||
|
|
||||||
|
private static Log log = LogFactory.getLog(ConfigRetrieveAPIImpl.class);
|
||||||
|
|
||||||
|
@GET
|
||||||
|
@Override
|
||||||
|
@Consumes("application/json")
|
||||||
|
@Path("/ui-config")
|
||||||
|
public Response getUiConfig() {
|
||||||
|
AppmDataHandler dataHandler = APIUtil.getDataHandler();
|
||||||
|
UIConfiguration uiConfiguration = dataHandler.getUIConfiguration();
|
||||||
|
if (uiConfiguration == null){
|
||||||
|
String msg = "UI configuration is not initiated.";
|
||||||
|
log.error(msg);
|
||||||
|
return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build();
|
||||||
|
}
|
||||||
|
return Response.status(Response.Status.OK).entity(uiConfiguration).build();
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,33 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!--
|
||||||
|
* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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 contains the list of permissions that are associated with URL end points
|
||||||
|
of the web app. Each permission should contain the name, permission path ,API path
|
||||||
|
(URL) , HTTP method and OAUTH2 authorization scope (not-required).
|
||||||
|
When defining dynamic paths for APIs, path variables are denoted by '*' notation.
|
||||||
|
For ex:
|
||||||
|
Actual API endpoint: devicemgt_admin/1.0.0/devices/{device-id}
|
||||||
|
URL to be represented here: /devices/*
|
||||||
|
NOTE: All the endpoints of the web app should be available in this file. Otherwise
|
||||||
|
it will result 403 error at the runtime.
|
||||||
|
-->
|
||||||
|
<PermissionConfiguration>
|
||||||
|
<APIVersion></APIVersion>
|
||||||
|
|
||||||
|
</PermissionConfiguration>
|
||||||
@ -1,21 +1,21 @@
|
|||||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
~ Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
~
|
*
|
||||||
~ WSO2 Inc. licenses this file to you under the Apache License,
|
* Entgra (Pvt) Ltd. licenses this file to you under the Apache License,
|
||||||
~ Version 2.0 (the "License"); you may not use this file except
|
* Version 2.0 (the "License"); you may not use this file except
|
||||||
~ in compliance with the License.
|
* in compliance with the License.
|
||||||
~ You may obtain a copy of the License at
|
* You may obtain a copy of the License at
|
||||||
~
|
*
|
||||||
~ http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
~
|
*
|
||||||
~ Unless required by applicable law or agreed to in writing,
|
* Unless required by applicable law or agreed to in writing,
|
||||||
~ software distributed under the License is distributed on an
|
* software distributed under the License is distributed on an
|
||||||
~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
~ KIND, either express or implied. See the License for the
|
* KIND, either express or implied. See the License for the
|
||||||
~ specific language governing permissions and limitations
|
* specific language governing permissions and limitations
|
||||||
~ under the License.
|
* under the License.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
@ -0,0 +1,69 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!--
|
||||||
|
* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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="applicationMgtCommonService" address="/">
|
||||||
|
<jaxrs:serviceBeans>
|
||||||
|
<ref bean="applicationMgtConfigService"/>
|
||||||
|
<ref bean="applicationMgtArtifactService"/>
|
||||||
|
<ref bean="swaggerResource"/>
|
||||||
|
</jaxrs:serviceBeans>
|
||||||
|
<jaxrs:providers>
|
||||||
|
<ref bean="jsonProvider"/>
|
||||||
|
<ref bean="multipartProvider"/>
|
||||||
|
<ref bean="swaggerWriter"/>
|
||||||
|
</jaxrs:providers>
|
||||||
|
</jaxrs:server>
|
||||||
|
|
||||||
|
<bean id="swaggerConfig" class="io.swagger.jaxrs.config.BeanConfig">
|
||||||
|
<property name="resourcePackage" value="org.wso2.carbon.device.application.mgt.publisher.api"/>
|
||||||
|
<property name="version" value="1.0"/>
|
||||||
|
<property name="host" value="localhost:9443"/>
|
||||||
|
<property name="schemes" value="https" />
|
||||||
|
<property name="basePath" value="/api/application-mgt-publisher/v1.0"/>
|
||||||
|
<property name="title" value="Application 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="org.wso2.carbon.device.application.mgt.addons.ValidationInterceptor" class="org.wso2.carbon.device.application.mgt.addons.ValidationInterceptor"/>
|
||||||
|
<bean id="swaggerWriter" class="io.swagger.jaxrs.listing.SwaggerSerializers" />
|
||||||
|
<bean id="swaggerResource" class="io.swagger.jaxrs.listing.ApiListingResource" />
|
||||||
|
|
||||||
|
<bean id="applicationMgtConfigService" class="org.wso2.carbon.device.application.mgt.api.services.impl.ConfigRetrieveAPIImpl"/>
|
||||||
|
<bean id="applicationMgtArtifactService" class="org.wso2.carbon.device.application.mgt.api.services.impl.ArtifactDownloadAPIImpl"/>
|
||||||
|
<bean id="jsonProvider" class="org.wso2.carbon.device.application.mgt.addons.JSONMessageHandler"/>
|
||||||
|
<bean id="multipartProvider" class="org.wso2.carbon.device.application.mgt.addons.MultipartCustomProvider"/>
|
||||||
|
|
||||||
|
<cxf:bus>
|
||||||
|
<cxf:inInterceptors>
|
||||||
|
<ref bean="org.wso2.carbon.device.application.mgt.addons.ValidationInterceptor"/>
|
||||||
|
</cxf:inInterceptors>
|
||||||
|
</cxf:bus>
|
||||||
|
|
||||||
|
</beans>
|
||||||
|
|
||||||
|
|
||||||
@ -0,0 +1,129 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!--
|
||||||
|
* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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>Application Management Webapp</display-name>
|
||||||
|
<servlet>
|
||||||
|
<description>JAX-WS/JAX-RS Application 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>true</param-value>
|
||||||
|
</context-param>
|
||||||
|
|
||||||
|
<!-- Below configuration is used to redirect http requests to https -->
|
||||||
|
<!-- Below configuration is commented because artifact download API is accessed from the device -->
|
||||||
|
<!-- <security-constraint>-->
|
||||||
|
<!-- <web-resource-collection>-->
|
||||||
|
<!-- <web-resource-name>ApplicationMgt-Admin</web-resource-name>-->
|
||||||
|
<!-- <url-pattern>/*</url-pattern>-->
|
||||||
|
<!-- </web-resource-collection>-->
|
||||||
|
<!-- <user-data-constraint>-->
|
||||||
|
<!-- <transport-guarantee>CONFIDENTIAL</transport-guarantee>-->
|
||||||
|
<!-- </user-data-constraint>-->
|
||||||
|
<!-- </security-constraint>-->
|
||||||
|
|
||||||
|
<!--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>
|
||||||
|
|
||||||
|
<filter>
|
||||||
|
<filter-name>ApiOriginFilter</filter-name>
|
||||||
|
<filter-class>org.wso2.carbon.device.application.mgt.addons.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>
|
||||||
|
|
||||||
|
<context-param>
|
||||||
|
<param-name>nonSecuredEndPoints</param-name>
|
||||||
|
<param-value>
|
||||||
|
/api/application-mgt/v1.0/artifact/.*,
|
||||||
|
/api/application-mgt/v1.0/config/.*
|
||||||
|
</param-value>
|
||||||
|
</context-param>
|
||||||
|
|
||||||
|
</web-app>
|
||||||
@ -0,0 +1,127 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!--
|
||||||
|
~ Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
|
~
|
||||||
|
~ Entgra (pvt) Ltd. 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/xsd/maven-4.0.0.xsd">
|
||||||
|
<parent>
|
||||||
|
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||||
|
<artifactId>application-mgt</artifactId>
|
||||||
|
<version>4.0.0-SNAPSHOT</version>
|
||||||
|
<relativePath>../pom.xml</relativePath>
|
||||||
|
</parent>
|
||||||
|
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<artifactId>org.wso2.carbon.device.application.mgt.common</artifactId>
|
||||||
|
<version>4.0.0-SNAPSHOT</version>
|
||||||
|
<packaging>bundle</packaging>
|
||||||
|
<name>WSO2 Carbon - Application Management Common</name>
|
||||||
|
<description>WSO2 Carbon - Application Management Common</description>
|
||||||
|
<url>https://entgra.io</url>
|
||||||
|
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.felix</groupId>
|
||||||
|
<artifactId>maven-scr-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.felix</groupId>
|
||||||
|
<artifactId>maven-bundle-plugin</artifactId>
|
||||||
|
<extensions>true</extensions>
|
||||||
|
<configuration>
|
||||||
|
<instructions>
|
||||||
|
<Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
|
||||||
|
<Bundle-Name>${project.artifactId}</Bundle-Name>
|
||||||
|
<Bundle-Version>${carbon.device.mgt.version}</Bundle-Version>
|
||||||
|
<Bundle-Description>Application Management Common Bundle</Bundle-Description>
|
||||||
|
<Import-Package>
|
||||||
|
org.wso2.carbon.device.mgt.common.*;version="${carbon.device.mgt.version}",
|
||||||
|
org.wso2.carbon.device.mgt.core.dto;version="${carbon.device.mgt.version}",
|
||||||
|
com.google.gson,
|
||||||
|
io.swagger.annotations.*;resolution:=optional,
|
||||||
|
com.fasterxml.jackson.annotation,
|
||||||
|
javax.validation.constraints,
|
||||||
|
javax.xml.bind.annotation.*,
|
||||||
|
</Import-Package>
|
||||||
|
<Export-Package>
|
||||||
|
org.wso2.carbon.device.application.mgt.common.*
|
||||||
|
</Export-Package>
|
||||||
|
</instructions>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.eclipse.osgi</groupId>
|
||||||
|
<artifactId>org.eclipse.osgi</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.eclipse.equinox</groupId>
|
||||||
|
<artifactId>org.eclipse.equinox.common</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.wso2.carbon</groupId>
|
||||||
|
<artifactId>org.wso2.carbon.logging</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>commons-codec.wso2</groupId>
|
||||||
|
<artifactId>commons-codec</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>commons-io.wso2</groupId>
|
||||||
|
<artifactId>commons-io</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>io.swagger</groupId>
|
||||||
|
<artifactId>swagger-annotations</artifactId>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.json.wso2</groupId>
|
||||||
|
<artifactId>json</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.google.code.gson</groupId>
|
||||||
|
<artifactId>gson</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||||
|
<artifactId>org.wso2.carbon.device.mgt.core</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.wso2.carbon.devicemgt</groupId>
|
||||||
|
<artifactId>org.wso2.carbon.device.mgt.common</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.hibernate</groupId>
|
||||||
|
<artifactId>hibernate-validator</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.apache.cxf</groupId>
|
||||||
|
<artifactId>cxf-rt-frontend-jaxrs</artifactId>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.codehaus.jackson</groupId>
|
||||||
|
<artifactId>jackson-core-asl</artifactId>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
</project>
|
||||||
|
|
||||||
@ -0,0 +1,26 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* States of the Application.
|
||||||
|
*/
|
||||||
|
public enum AppLifecycleState {
|
||||||
|
CREATED, IN_REVIEW, PUBLISHED, APPROVED, BLOCKED, REJECTED, DEPRECATED, RETIRED
|
||||||
|
}
|
||||||
|
|
||||||
@ -0,0 +1,106 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.dto.ApplicationDTO;
|
||||||
|
|
||||||
|
public class AppOperation {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 7603215716452548282L;
|
||||||
|
|
||||||
|
private ApplicationDTO application;
|
||||||
|
private int tenantId;
|
||||||
|
private String activityId;
|
||||||
|
private String scheduledDateTime;
|
||||||
|
private OperationType type;
|
||||||
|
private String subscribedBy;
|
||||||
|
private int appReleaseId;
|
||||||
|
private InstallState installState;
|
||||||
|
|
||||||
|
public InstallState getInstallState() {
|
||||||
|
return installState;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setInstallState(InstallState installState) {
|
||||||
|
this.installState = installState;
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum InstallState {
|
||||||
|
PENDING, INPROGRESS, INSTALLED, UNINSTALLED, ERROR
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getAppReleaseId() {
|
||||||
|
return appReleaseId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAppReleaseId(int appReleaseId) {
|
||||||
|
this.appReleaseId = appReleaseId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSubscribedBy() {
|
||||||
|
return subscribedBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSubscribedBy(String subscribedBy) {
|
||||||
|
this.subscribedBy = subscribedBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum OperationType {
|
||||||
|
INSTALL, UNINSTALL, UPDATE
|
||||||
|
}
|
||||||
|
|
||||||
|
public OperationType getType() {
|
||||||
|
return type;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setType(OperationType type) {
|
||||||
|
this.type = type;
|
||||||
|
}
|
||||||
|
|
||||||
|
public ApplicationDTO getApplication() {
|
||||||
|
return application;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setApplication(ApplicationDTO application) {
|
||||||
|
this.application = application;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getTenantId() {
|
||||||
|
return tenantId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTenantId(int tenantId) {
|
||||||
|
this.tenantId = tenantId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getActivityId() {
|
||||||
|
return activityId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setActivityId(String activityId) {
|
||||||
|
this.activityId = activityId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getScheduledDateTime() {
|
||||||
|
return scheduledDateTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setScheduledDateTime(String scheduledDateTime) {
|
||||||
|
this.scheduledDateTime = scheduledDateTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,93 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
public class ApplicationArtifact {
|
||||||
|
|
||||||
|
private String installerName;
|
||||||
|
|
||||||
|
private InputStream installerStream;
|
||||||
|
|
||||||
|
private String bannerName;
|
||||||
|
|
||||||
|
private InputStream bannerStream;
|
||||||
|
|
||||||
|
private String iconName;
|
||||||
|
|
||||||
|
private InputStream iconStream;
|
||||||
|
|
||||||
|
private Map<String , InputStream> screenshots;
|
||||||
|
|
||||||
|
public String getInstallerName() {
|
||||||
|
return installerName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setInstallerName(String installerName) {
|
||||||
|
this.installerName = installerName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public InputStream getInstallerStream() {
|
||||||
|
return installerStream;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setInstallerStream(InputStream installerStream) {
|
||||||
|
this.installerStream = installerStream;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getBannerName() {
|
||||||
|
return bannerName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBannerName(String bannerName) {
|
||||||
|
this.bannerName = bannerName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public InputStream getBannerStream() {
|
||||||
|
return bannerStream;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBannerStream(InputStream bannerStream) {
|
||||||
|
this.bannerStream = bannerStream;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getIconName() {
|
||||||
|
return iconName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIconName(String iconName) {
|
||||||
|
this.iconName = iconName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public InputStream getIconStream() {
|
||||||
|
return iconStream;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIconStream(InputStream iconStream) {
|
||||||
|
this.iconStream = iconStream;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map<String, InputStream> getScreenshots() {
|
||||||
|
return screenshots;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setScreenshots(Map<String, InputStream> screenshots) {
|
||||||
|
this.screenshots = screenshots;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,67 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
|
||||||
|
import org.wso2.carbon.device.mgt.common.operation.mgt.Activity;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class ApplicationInstallResponse {
|
||||||
|
@ApiModelProperty(
|
||||||
|
name = "ignoredDeviceIdentifiers",
|
||||||
|
value = "List of devices that application release is already installed.",
|
||||||
|
dataType = "List[org.wso2.carbon.device.mgt.common.DeviceIdentifier]"
|
||||||
|
)
|
||||||
|
private List<DeviceIdentifier> ignoredDeviceIdentifiers;
|
||||||
|
|
||||||
|
@ApiModelProperty(
|
||||||
|
name = "errorDevices",
|
||||||
|
value = "List of devices that either device identity is not exist or device type doesn't compatible with the supported device type of the .",
|
||||||
|
dataType = "List[org.wso2.carbon.device.mgt.common.DeviceIdentifier]"
|
||||||
|
)
|
||||||
|
private List<DeviceIdentifier> errorDeviceIdentifiers;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty(
|
||||||
|
name = "activity",
|
||||||
|
value = "Activity corresponding to the operation"
|
||||||
|
)
|
||||||
|
private List<Activity> activities;
|
||||||
|
|
||||||
|
public List<Activity> getActivities() {
|
||||||
|
return activities;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setActivities(List<Activity> activity) {
|
||||||
|
this.activities = activity;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<DeviceIdentifier> getIgnoredDeviceIdentifiers() {
|
||||||
|
return ignoredDeviceIdentifiers;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIgnoredDeviceIdentifiers(List<DeviceIdentifier> ignoredDeviceIdentifiers) {
|
||||||
|
this.ignoredDeviceIdentifiers = ignoredDeviceIdentifiers;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<DeviceIdentifier> getErrorDeviceIdentifiers() { return errorDeviceIdentifiers; }
|
||||||
|
|
||||||
|
public void setErrorDeviceIdentifiers(List<DeviceIdentifier> errorDeviceIdentifiers) { this.errorDeviceIdentifiers = errorDeviceIdentifiers; }
|
||||||
|
}
|
||||||
@ -0,0 +1,70 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
|
||||||
|
import org.wso2.carbon.device.mgt.common.operation.mgt.Activity;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class ApplicationInstallResponseTmp {
|
||||||
|
@ApiModelProperty(
|
||||||
|
name = "successfulDevices",
|
||||||
|
value = "List of successful devices",
|
||||||
|
dataType = "List[org.wso2.carbon.device.mgt.common.DeviceIdentifier]"
|
||||||
|
)
|
||||||
|
private List<DeviceIdentifier> successfulDevices;
|
||||||
|
|
||||||
|
@ApiModelProperty(
|
||||||
|
name = "failedDevices",
|
||||||
|
value = "List of failed devices",
|
||||||
|
dataType = "List[org.wso2.carbon.device.mgt.common.DeviceIdentifier]"
|
||||||
|
)
|
||||||
|
private List<DeviceIdentifier> failedDevices;
|
||||||
|
|
||||||
|
@ApiModelProperty(
|
||||||
|
name = "activity",
|
||||||
|
value = "Activity corresponding to the operation"
|
||||||
|
)
|
||||||
|
private Activity activity;
|
||||||
|
|
||||||
|
public List<DeviceIdentifier> getSuccessfulDevices() {
|
||||||
|
return successfulDevices;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSuccessfulDevices(List<DeviceIdentifier> successfulDevices) {
|
||||||
|
this.successfulDevices = successfulDevices;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<DeviceIdentifier> getFailedDevices() {
|
||||||
|
return failedDevices;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFailedDevices(List<DeviceIdentifier> failedDevices) {
|
||||||
|
this.failedDevices = failedDevices;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Activity getActivity() {
|
||||||
|
return activity;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setActivity(Activity activity) {
|
||||||
|
this.activity = activity;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,46 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
public class ApplicationInstaller {
|
||||||
|
|
||||||
|
/***
|
||||||
|
* Package name of the Installer
|
||||||
|
*/
|
||||||
|
private String packageName;
|
||||||
|
|
||||||
|
/***
|
||||||
|
* Version of the Installer.
|
||||||
|
*/
|
||||||
|
private String version;
|
||||||
|
|
||||||
|
public String getPackageName() {
|
||||||
|
return packageName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPackageName(String packageName) {
|
||||||
|
this.packageName = packageName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getVersion() {
|
||||||
|
return version;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setVersion(String version) {
|
||||||
|
this.version = version;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,48 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.dto.ApplicationDTO;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.response.Application;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Represents a list of {@link ApplicationDTO}.
|
||||||
|
*/
|
||||||
|
public class ApplicationList {
|
||||||
|
|
||||||
|
private List<Application> applications;
|
||||||
|
|
||||||
|
private Pagination pagination;
|
||||||
|
|
||||||
|
public List<Application> getApplications() {
|
||||||
|
return applications;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setApplications(List<Application> applications) {
|
||||||
|
this.applications = applications;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Pagination getPagination() {
|
||||||
|
return pagination;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPagination(Pagination pagination) {
|
||||||
|
this.pagination = pagination;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,25 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Possible Subscription Type of the application.
|
||||||
|
*/
|
||||||
|
public enum ApplicationSubscriptionType {
|
||||||
|
FREE, PAID
|
||||||
|
}
|
||||||
@ -0,0 +1,26 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Application Types.
|
||||||
|
*/
|
||||||
|
public enum ApplicationType {
|
||||||
|
ENTERPRISE, PUBLIC, WEB_APP, WEB_CLIP, CUSTOM
|
||||||
|
}
|
||||||
|
|
||||||
@ -0,0 +1,38 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
|
||||||
|
public class BasePaginatedResult {
|
||||||
|
|
||||||
|
@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;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
*
|
*
|
||||||
* WSO2 Inc. licenses this file to you under the Apache License,
|
* Entgra (pvt) Ltd. licenses this file to you under the Apache License,
|
||||||
* Version 2.0 (the "License"); you may not use this file except
|
* Version 2.0 (the "License"); you may not use this file except
|
||||||
* in compliance with the License.
|
* in compliance with the License.
|
||||||
* You may obtain a copy of the License at
|
* You may obtain a copy of the License at
|
||||||
@ -14,10 +14,8 @@
|
|||||||
* KIND, either express or implied. See the License for the
|
* KIND, either express or implied. See the License for the
|
||||||
* specific language governing permissions and limitations
|
* specific language governing permissions and limitations
|
||||||
* under the License.
|
* under the License.
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
|
package org.wso2.carbon.device.application.mgt.common;
|
||||||
package org.wso2.carbon.device.mgt.jaxrs.beans;
|
|
||||||
|
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
@ -33,6 +31,10 @@ public class BasicUserInfo {
|
|||||||
private String lastname;
|
private String lastname;
|
||||||
@ApiModelProperty(name = "emailAddress", value = "The email address of the user.", required = true )
|
@ApiModelProperty(name = "emailAddress", value = "The email address of the user.", required = true )
|
||||||
private String emailAddress;
|
private String emailAddress;
|
||||||
|
@ApiModelProperty(name = "createdDate", value = "User creation date." )
|
||||||
|
private String createdDate;
|
||||||
|
@ApiModelProperty(name = "modifiedDate", value = "User modifiedDate date." )
|
||||||
|
private String modifiedDate;
|
||||||
|
|
||||||
public String getUsername() {
|
public String getUsername() {
|
||||||
return username;
|
return username;
|
||||||
@ -66,4 +68,20 @@ public class BasicUserInfo {
|
|||||||
this.emailAddress = emailAddress;
|
this.emailAddress = emailAddress;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getCreatedDate() {
|
||||||
|
return createdDate;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCreatedDate(String createdDate) {
|
||||||
|
this.createdDate = createdDate;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getModifiedDate() {
|
||||||
|
return modifiedDate;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setModifiedDate(String modifiedDate) {
|
||||||
|
this.modifiedDate = modifiedDate;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
*
|
*
|
||||||
* WSO2 Inc. licenses this file to you under the Apache License,
|
* Entgra (pvt) Ltd. licenses this file to you under the Apache License,
|
||||||
* Version 2.0 (the "License"); you may not use this file except
|
* Version 2.0 (the "License"); you may not use this file except
|
||||||
* in compliance with the License.
|
* in compliance with the License.
|
||||||
* You may obtain a copy of the License at
|
* You may obtain a copy of the License at
|
||||||
@ -14,10 +14,8 @@
|
|||||||
* KIND, either express or implied. See the License for the
|
* KIND, either express or implied. See the License for the
|
||||||
* specific language governing permissions and limitations
|
* specific language governing permissions and limitations
|
||||||
* under the License.
|
* under the License.
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
|
package org.wso2.carbon.device.application.mgt.common;
|
||||||
package org.wso2.carbon.device.mgt.jaxrs.beans;
|
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
*
|
*
|
||||||
* WSO2 Inc. licenses this file to you under the Apache License,
|
* Entgra (pvt) Ltd. licenses this file to you under the Apache License,
|
||||||
* Version 2.0 (the "License"); you may not use this file except
|
* Version 2.0 (the "License"); you may not use this file except
|
||||||
* in compliance with the License.
|
* in compliance with the License.
|
||||||
* You may obtain a copy of the License at
|
* You may obtain a copy of the License at
|
||||||
@ -14,10 +14,8 @@
|
|||||||
* KIND, either express or implied. See the License for the
|
* KIND, either express or implied. See the License for the
|
||||||
* specific language governing permissions and limitations
|
* specific language governing permissions and limitations
|
||||||
* under the License.
|
* under the License.
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
|
package org.wso2.carbon.device.application.mgt.common;
|
||||||
package org.wso2.carbon.device.mgt.jaxrs.beans;
|
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
@ -50,4 +48,3 @@ public class DeviceGroupList extends BasePaginatedResult {
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
*
|
*
|
||||||
* WSO2 Inc. licenses this file to you under the Apache License,
|
* Entgra (pvt) Ltd. licenses this file to you under the Apache License,
|
||||||
* Version 2.0 (the "License"); you may not use this file except
|
* Version 2.0 (the "License"); you may not use this file except
|
||||||
* in compliance with the License.
|
* in compliance with the License.
|
||||||
* You may obtain a copy of the License at
|
* You may obtain a copy of the License at
|
||||||
@ -14,10 +14,8 @@
|
|||||||
* KIND, either express or implied. See the License for the
|
* KIND, either express or implied. See the License for the
|
||||||
* specific language governing permissions and limitations
|
* specific language governing permissions and limitations
|
||||||
* under the License.
|
* under the License.
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
|
package org.wso2.carbon.device.application.mgt.common;
|
||||||
package org.wso2.carbon.device.mgt.jaxrs.beans;
|
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
@ -44,7 +42,6 @@ public class DeviceList extends BasePaginatedResult {
|
|||||||
public String toString() {
|
public String toString() {
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
sb.append("{\n");
|
sb.append("{\n");
|
||||||
|
|
||||||
sb.append(" count: ").append(getCount()).append(",\n");
|
sb.append(" count: ").append(getCount()).append(",\n");
|
||||||
sb.append(" devices: [").append(devices).append("\n");
|
sb.append(" devices: [").append(devices).append("\n");
|
||||||
sb.append("]}\n");
|
sb.append("]}\n");
|
||||||
@ -52,4 +49,3 @@ public class DeviceList extends BasePaginatedResult {
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -0,0 +1,80 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
import org.wso2.carbon.device.mgt.common.Device;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
public class DeviceSubscriptionData {
|
||||||
|
|
||||||
|
private String action;
|
||||||
|
private Timestamp actionTriggeredTimestamp;
|
||||||
|
private String actionTriggeredBy;
|
||||||
|
private String actionType;
|
||||||
|
private String status;
|
||||||
|
private Device device;
|
||||||
|
|
||||||
|
public String getAction() {
|
||||||
|
return action;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAction(String action) {
|
||||||
|
this.action = action;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Timestamp getActionTriggeredTimestamp() {
|
||||||
|
return actionTriggeredTimestamp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setActionTriggeredTimestamp(Timestamp actionTriggeredTimestamp) {
|
||||||
|
this.actionTriggeredTimestamp = actionTriggeredTimestamp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getActionTriggeredBy() {
|
||||||
|
return actionTriggeredBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setActionTriggeredBy(String actionTriggeredBy) {
|
||||||
|
this.actionTriggeredBy = actionTriggeredBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getActionType() {
|
||||||
|
return actionType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setActionType(String actionType) {
|
||||||
|
this.actionType = actionType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getStatus() {
|
||||||
|
return status;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setStatus(String status) {
|
||||||
|
this.status = status;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Device getDevice() {
|
||||||
|
return device;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDevice(Device device) {
|
||||||
|
this.device = device;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,21 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
public enum DeviceTypes {
|
||||||
|
ANDROID, IOS
|
||||||
|
}
|
||||||
@ -0,0 +1,84 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class EnterpriseInstallationDetails {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This enum represents the type of entities which an application can be installed on.
|
||||||
|
*
|
||||||
|
* e.g: An application can be installed on all the devices belong to a user or a specific device group.
|
||||||
|
*/
|
||||||
|
@ApiModel
|
||||||
|
public enum EnterpriseEntity {
|
||||||
|
USER, ROLE, DEVICE_GROUP
|
||||||
|
}
|
||||||
|
|
||||||
|
@ApiModelProperty(
|
||||||
|
name = "applicationUUID",
|
||||||
|
value = "ApplicationDTO ID",
|
||||||
|
required = true,
|
||||||
|
example = "4354c752-109f-11e8-b642-0ed5f89f718b"
|
||||||
|
)
|
||||||
|
private String applicationUUID;
|
||||||
|
|
||||||
|
@ApiModelProperty(
|
||||||
|
name = "entityType",
|
||||||
|
value = "Enterprise entity type",
|
||||||
|
required = true,
|
||||||
|
example = "USER"
|
||||||
|
)
|
||||||
|
private EnterpriseEntity entityType;
|
||||||
|
|
||||||
|
@ApiModelProperty(
|
||||||
|
name = "entityValueList",
|
||||||
|
value = "List of users/roles or device groups.",
|
||||||
|
required = true,
|
||||||
|
example = "user1,user2, user3"
|
||||||
|
)
|
||||||
|
private List<String> entityValueList;
|
||||||
|
|
||||||
|
public String getApplicationUUID() {
|
||||||
|
return applicationUUID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setApplicationUUID(String applicationUUID) {
|
||||||
|
this.applicationUUID = applicationUUID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public EnterpriseEntity getEntityType() {
|
||||||
|
return entityType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEntityType(EnterpriseEntity entityType) {
|
||||||
|
this.entityType = entityType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<String> getEntityValueList() {
|
||||||
|
return entityValueList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEntityValueList(List<String> entityValueList) {
|
||||||
|
this.entityValueList = entityValueList;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
*
|
*
|
||||||
* WSO2 Inc. licenses this file to you under the Apache License,
|
* Entgra (pvt) Ltd. licenses this file to you under the Apache License,
|
||||||
* Version 2.0 (the "License"); you may not use this file except
|
* Version 2.0 (the "License"); you may not use this file except
|
||||||
* in compliance with the License.
|
* in compliance with the License.
|
||||||
* You may obtain a copy of the License at
|
* You may obtain a copy of the License at
|
||||||
@ -14,10 +14,8 @@
|
|||||||
* KIND, either express or implied. See the License for the
|
* KIND, either express or implied. See the License for the
|
||||||
* specific language governing permissions and limitations
|
* specific language governing permissions and limitations
|
||||||
* under the License.
|
* under the License.
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
|
package org.wso2.carbon.device.application.mgt.common;
|
||||||
package org.wso2.carbon.certificate.mgt.jaxrs.beans;
|
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
@ -25,6 +23,9 @@ import io.swagger.annotations.ApiModelProperty;
|
|||||||
|
|
||||||
import javax.validation.constraints.NotNull;
|
import javax.validation.constraints.NotNull;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Represents a single error item in the error response.
|
||||||
|
*/
|
||||||
@ApiModel(description = "Error List Item")
|
@ApiModel(description = "Error List Item")
|
||||||
public class ErrorListItem {
|
public class ErrorListItem {
|
||||||
|
|
||||||
@ -51,7 +52,6 @@ public class ErrorListItem {
|
|||||||
this.message = msg;
|
this.message = msg;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Description about individual errors occurred
|
* Description about individual errors occurred
|
||||||
*/
|
*/
|
||||||
@ -70,9 +70,11 @@ public class ErrorListItem {
|
|||||||
public String toString() {
|
public String toString() {
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
sb.append("errorItem {\n");
|
sb.append("errorItem {\n");
|
||||||
|
|
||||||
sb.append(" code: ").append(code).append("\n");
|
sb.append(" code: ").append(code).append("\n");
|
||||||
sb.append(" message: ").append(message).append("\n");
|
sb.append(" message: ").append(message).append("\n");
|
||||||
sb.append("}\n");
|
sb.append("}\n");
|
||||||
return sb.toString();
|
return sb.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -0,0 +1,105 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This represents a response that need to be send back to the client, when the request cannot be completed
|
||||||
|
* successfully.
|
||||||
|
*/
|
||||||
|
@ApiModel(description = "Error Response")
|
||||||
|
public class ErrorResponse {
|
||||||
|
|
||||||
|
private Integer code = null;
|
||||||
|
private String message = null;
|
||||||
|
private String description = null;
|
||||||
|
private String moreInfo = null;
|
||||||
|
private List<ErrorListItem> errorItems = new ArrayList<>();
|
||||||
|
|
||||||
|
public ErrorResponse() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public ErrorResponse(String message) {
|
||||||
|
this.message = message;
|
||||||
|
}
|
||||||
|
|
||||||
|
@JsonProperty(value = "code")
|
||||||
|
@ApiModelProperty(required = true, value = "")
|
||||||
|
public Integer getCode() {
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCode(Integer 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;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,23 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
public enum ExecutionStatus {
|
||||||
|
PENDING, EXECUTED, FAILED
|
||||||
|
}
|
||||||
@ -0,0 +1,196 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Filter represents a criteria that can be used for searching applications.
|
||||||
|
*/
|
||||||
|
public class Filter {
|
||||||
|
|
||||||
|
/***
|
||||||
|
* Supported device type for the application.
|
||||||
|
* e.g :- Android, iOS, Windows
|
||||||
|
*/
|
||||||
|
private String deviceType;
|
||||||
|
|
||||||
|
/***
|
||||||
|
* Name of the application.
|
||||||
|
*/
|
||||||
|
private String appName;
|
||||||
|
|
||||||
|
/***
|
||||||
|
* Type of the application.
|
||||||
|
* e.g :- ENTERPRISE, PUBLIC
|
||||||
|
*/
|
||||||
|
private String appType;
|
||||||
|
|
||||||
|
/***
|
||||||
|
* Subscription type of the application.
|
||||||
|
* e.g :- FREE, PAID etc
|
||||||
|
*/
|
||||||
|
private String subscriptionType;
|
||||||
|
|
||||||
|
/***
|
||||||
|
* Minimum rating of the application.
|
||||||
|
* e.g :- 4,5
|
||||||
|
*/
|
||||||
|
private int minimumRating;
|
||||||
|
|
||||||
|
/***
|
||||||
|
* Application release version.
|
||||||
|
*/
|
||||||
|
private String version;
|
||||||
|
|
||||||
|
/***
|
||||||
|
* Release type of the application release.
|
||||||
|
* e.g :- Alpha, Beta
|
||||||
|
*/
|
||||||
|
private String appReleaseType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Category list of the application
|
||||||
|
*/
|
||||||
|
private List<String> categories;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Tag list of the application
|
||||||
|
*/
|
||||||
|
private List<String> tags;
|
||||||
|
|
||||||
|
/***
|
||||||
|
* Unrestricted role list. Visibility of the application can restricted through user roles and users can view the
|
||||||
|
* application who has at least one role in unrestricted role list
|
||||||
|
*/
|
||||||
|
private List<String> unrestrictedRoles;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Checking the application name matches fully with given name
|
||||||
|
*/
|
||||||
|
private boolean isFullMatch;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Limit of the applications
|
||||||
|
*/
|
||||||
|
private int limit;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Started from
|
||||||
|
*/
|
||||||
|
private int offset;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Ascending or descending order
|
||||||
|
*/
|
||||||
|
private String sortBy;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Current application release state.
|
||||||
|
* e.g :- CREATED. IN_REVIEW, PUBLISHED etc
|
||||||
|
*/
|
||||||
|
private String appReleaseState;
|
||||||
|
|
||||||
|
public int getLimit() {
|
||||||
|
return limit;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLimit(int limit) {
|
||||||
|
this.limit = limit;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getOffset() {
|
||||||
|
return offset;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOffset(int offset) {
|
||||||
|
this.offset = offset;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getAppName() {
|
||||||
|
return appName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAppName(String appName) {
|
||||||
|
this.appName = appName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSortBy() {
|
||||||
|
return sortBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSortBy(String sortBy) {
|
||||||
|
this.sortBy = sortBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isFullMatch() {
|
||||||
|
return isFullMatch;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFullMatch(boolean fullMatch) {
|
||||||
|
isFullMatch = fullMatch;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getAppType() {
|
||||||
|
return appType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAppType(String appType) {
|
||||||
|
this.appType = appType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<String> getCategories() {
|
||||||
|
return categories;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCategories(List<String> categories) {
|
||||||
|
this.categories = categories;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<String> getTags() { return tags; }
|
||||||
|
|
||||||
|
public void setTags(List<String> tags) { this.tags = tags; }
|
||||||
|
|
||||||
|
public List<String> getUnrestrictedRoles() { return unrestrictedRoles; }
|
||||||
|
|
||||||
|
public void setUnrestrictedRoles(List<String> unrestrictedRoles) { this.unrestrictedRoles = unrestrictedRoles; }
|
||||||
|
|
||||||
|
public String getAppReleaseState() { return appReleaseState; }
|
||||||
|
|
||||||
|
public void setAppReleaseState(String appReleaseState) { this.appReleaseState = appReleaseState; }
|
||||||
|
|
||||||
|
public String getDeviceType() { return deviceType; }
|
||||||
|
|
||||||
|
public void setDeviceType(String deviceType) { this.deviceType = deviceType; }
|
||||||
|
|
||||||
|
public String getSubscriptionType() { return subscriptionType; }
|
||||||
|
|
||||||
|
public void setSubscriptionType(String subscriptionType) { this.subscriptionType = subscriptionType; }
|
||||||
|
|
||||||
|
public int getMinimumRating() { return minimumRating; }
|
||||||
|
|
||||||
|
public void setMinimumRating(int minimumRating) { this.minimumRating = minimumRating; }
|
||||||
|
|
||||||
|
public String getVersion() { return version; }
|
||||||
|
|
||||||
|
public void setVersion(String version) { this.version = version; }
|
||||||
|
|
||||||
|
public String getAppReleaseType() { return appReleaseType; }
|
||||||
|
|
||||||
|
public void setAppReleaseType(String appReleaseType) { this.appReleaseType = appReleaseType; }
|
||||||
|
}
|
||||||
@ -0,0 +1,53 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This represents a image artifact of a application. Icon, Screen-shot or Banner.
|
||||||
|
* It consists of a name, type and base64 encoded string format of the image.
|
||||||
|
*/
|
||||||
|
public class ImageArtifact {
|
||||||
|
private String name;
|
||||||
|
private String type;
|
||||||
|
private String encodedImage;
|
||||||
|
|
||||||
|
public String getType() {
|
||||||
|
return type;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getEncodedImage() {
|
||||||
|
return encodedImage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setType(String type) {
|
||||||
|
this.type = type;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEncodedImage(String encodedImage) {
|
||||||
|
this.encodedImage = encodedImage;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,56 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class InstallationDetails {
|
||||||
|
@ApiModelProperty(
|
||||||
|
name = "applicationUUID",
|
||||||
|
value = "Application ID",
|
||||||
|
required = true
|
||||||
|
)
|
||||||
|
private String applicationUUID;
|
||||||
|
|
||||||
|
@ApiModelProperty(
|
||||||
|
name = "deviceIdentifiers",
|
||||||
|
value = "List of device identifiers.",
|
||||||
|
required = true,
|
||||||
|
dataType = "List[org.wso2.carbon.device.mgt.common.DeviceIdentifier]"
|
||||||
|
)
|
||||||
|
private List<DeviceIdentifier> deviceIdentifiers;
|
||||||
|
|
||||||
|
public String getApplicationUUID() {
|
||||||
|
return applicationUUID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setApplicationUUID(String applicationUUID) {
|
||||||
|
this.applicationUUID = applicationUUID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<DeviceIdentifier> getDeviceIdentifiers() {
|
||||||
|
return deviceIdentifiers;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDeviceIdentifiers(List<DeviceIdentifier> deviceIdentifiers) {
|
||||||
|
this.deviceIdentifiers = deviceIdentifiers;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,32 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
public class LifecycleChanger {
|
||||||
|
|
||||||
|
private String action;
|
||||||
|
private String reason;
|
||||||
|
|
||||||
|
public String getAction() { return action; }
|
||||||
|
|
||||||
|
public void setAction(String action) { this.action = action; }
|
||||||
|
|
||||||
|
public String getReason() { return reason; }
|
||||||
|
|
||||||
|
public void setReason(String reason) { this.reason = reason; }
|
||||||
|
}
|
||||||
@ -0,0 +1,98 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@ApiModel(value = "LifecycleState", description = "LifecycleState represents the Lifecycle state for an application release")
|
||||||
|
public class LifecycleState {
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "currentState",
|
||||||
|
value = "Current state of the application release",
|
||||||
|
required = true)
|
||||||
|
private String currentState;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "previousState",
|
||||||
|
value = "Previous state of the application release",
|
||||||
|
required = true)
|
||||||
|
private String previousState;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "nextStates",
|
||||||
|
value = "Next possible transferring states from the current state")
|
||||||
|
private List<String> nextStates;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "updatedBy",
|
||||||
|
value = "Username who is update the application release state")
|
||||||
|
private String updatedBy;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "updatedAt",
|
||||||
|
value = "Timestamp of the lifecycle has been updated")
|
||||||
|
private Timestamp updatedAt;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "reasonForChange",
|
||||||
|
value = "Reason for the application release lifecycle change from previous state to current state.")
|
||||||
|
private String reasonForChange;
|
||||||
|
|
||||||
|
public String getCurrentState() {
|
||||||
|
return currentState;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCurrentState(String currentState) {
|
||||||
|
this.currentState = currentState;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPreviousState() {
|
||||||
|
return previousState;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPreviousState(String previousState) {
|
||||||
|
this.previousState = previousState;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUpdatedBy() {
|
||||||
|
return updatedBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUpdatedBy(String updatedBy) {
|
||||||
|
this.updatedBy = updatedBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Timestamp getUpdatedAt() {
|
||||||
|
return updatedAt;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUpdatedAt(Timestamp updatedAt) {
|
||||||
|
this.updatedAt = updatedAt;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<String> getNextStates() {
|
||||||
|
return nextStates;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setNextStates(List<String> nextStates) {
|
||||||
|
this.nextStates = nextStates;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getReasonForChange() { return reasonForChange; }
|
||||||
|
|
||||||
|
public void setReasonForChange(String reasonForChange) { this.reasonForChange = reasonForChange; }
|
||||||
|
}
|
||||||
@ -0,0 +1,64 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This class represents the pagination details that will be used when fetching application details from database.
|
||||||
|
*/
|
||||||
|
public class Pagination {
|
||||||
|
|
||||||
|
private int offset;
|
||||||
|
|
||||||
|
private int limit;
|
||||||
|
|
||||||
|
private int size;
|
||||||
|
|
||||||
|
private int count;
|
||||||
|
|
||||||
|
public int getOffset() {
|
||||||
|
return offset;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOffset(int offset) {
|
||||||
|
this.offset = offset;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getLimit() {
|
||||||
|
return limit;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLimit(int limit) {
|
||||||
|
this.limit = limit;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getSize() {
|
||||||
|
return size;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSize(int size) {
|
||||||
|
this.size = size;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getCount() {
|
||||||
|
return count;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCount(int count) {
|
||||||
|
this.count = count;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,63 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This class holds required parameters for a querying a paginated device response.
|
||||||
|
*/
|
||||||
|
public class PaginationRequest {
|
||||||
|
|
||||||
|
private int offSet;
|
||||||
|
private int limit;
|
||||||
|
|
||||||
|
public PaginationRequest(int start, int limit) {
|
||||||
|
this.offSet = start;
|
||||||
|
this.limit = limit;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getOffSet() {
|
||||||
|
return offSet;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOffSet(int offSet) {
|
||||||
|
this.offSet = offSet;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getLimit() {
|
||||||
|
return limit;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLimit(int limit) {
|
||||||
|
this.limit = limit;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean validatePaginationRequest(int offSet, int limit) {
|
||||||
|
if (offSet < 0) {
|
||||||
|
throw new IllegalArgumentException("off set value can't be negative");
|
||||||
|
} else if (limit < 0) {
|
||||||
|
throw new IllegalArgumentException("limit value can't be negative");
|
||||||
|
} else {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override public String toString() {
|
||||||
|
return "Off Set'" + this.offSet + "' row count '" + this.limit;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,79 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This class holds necessary data to represent a paginated result.
|
||||||
|
*/
|
||||||
|
@ApiModel(value = "PaginationResult", description = "This class carries all information related Pagination Result")
|
||||||
|
public class PaginationResult implements Serializable {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 1998101711L;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "recordsTotal", value = "The total number of records that are given before filtering", required = true)
|
||||||
|
private int recordsTotal;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "recordsFiltered", value = "The total number of records that are given after filtering", required = true)
|
||||||
|
private int recordsFiltered;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "draw", value = "The draw counter that this object is a response to, from the draw parameter sent as part of the data request", required = true)
|
||||||
|
private int draw;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "data", value = "This holds the database records that matches given criteria", required = true)
|
||||||
|
private List<?> data;
|
||||||
|
|
||||||
|
public int getRecordsTotal() {
|
||||||
|
return recordsTotal;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getRecordsFiltered() {
|
||||||
|
return recordsFiltered;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRecordsFiltered(int recordsFiltered) {
|
||||||
|
this.recordsFiltered = recordsFiltered;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRecordsTotal(int recordsTotal) {
|
||||||
|
this.recordsTotal = recordsTotal;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<?> getData() {
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setData(List<?> data) {
|
||||||
|
this.data = data;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getDraw() {
|
||||||
|
return draw;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDraw(int draw) {
|
||||||
|
this.draw = draw;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,42 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
public class ProxyResponse {
|
||||||
|
|
||||||
|
private int code;
|
||||||
|
private String url;
|
||||||
|
private String data;
|
||||||
|
private String executorResponse;
|
||||||
|
|
||||||
|
public int getCode() { return code; }
|
||||||
|
|
||||||
|
public void setCode(int code) { this.code = code; }
|
||||||
|
|
||||||
|
public String getUrl() { return url; }
|
||||||
|
|
||||||
|
public void setUrl(String url) { this.url = url; }
|
||||||
|
|
||||||
|
public String getData() { return data; }
|
||||||
|
|
||||||
|
public void setData(String data) { this.data = data; }
|
||||||
|
|
||||||
|
public String getExecutorResponse() { return executorResponse; }
|
||||||
|
|
||||||
|
public void setExecutorResponse(String executorResponse) { this.executorResponse = executorResponse; }
|
||||||
|
}
|
||||||
@ -0,0 +1,65 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
import java.util.TreeMap;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Rating represents the an overall rating value and number of users who has rated for an application release.
|
||||||
|
*/
|
||||||
|
public class Rating {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Rating value of the application release.
|
||||||
|
*/
|
||||||
|
private double ratingValue;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Number of users who has rated for the application release.
|
||||||
|
*/
|
||||||
|
private int noOfUsers;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Represent the rating variety for the application release
|
||||||
|
*/
|
||||||
|
private TreeMap<Integer, Integer> ratingVariety;
|
||||||
|
|
||||||
|
public double getRatingValue() {
|
||||||
|
return ratingValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRatingValue(double ratingValue) {
|
||||||
|
this.ratingValue = ratingValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getNoOfUsers() {
|
||||||
|
return noOfUsers;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setNoOfUsers(int noOfUsers) {
|
||||||
|
this.noOfUsers = noOfUsers;
|
||||||
|
}
|
||||||
|
|
||||||
|
public TreeMap<Integer, Integer> getRatingVariety() {
|
||||||
|
return ratingVariety;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRatingVariety(TreeMap<Integer, Integer> ratingVariety) {
|
||||||
|
this.ratingVariety = ratingVariety;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,66 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class ReviewNode<T> {
|
||||||
|
|
||||||
|
private T data = null;
|
||||||
|
|
||||||
|
private List<ReviewNode<T>> children = new ArrayList<>();
|
||||||
|
|
||||||
|
private ReviewNode<T> parent = null;
|
||||||
|
|
||||||
|
public ReviewNode(T data) {
|
||||||
|
this.data = data;
|
||||||
|
}
|
||||||
|
|
||||||
|
public ReviewNode<T> addChild(ReviewNode<T> child) {
|
||||||
|
child.setParent(this);
|
||||||
|
this.children.add(child);
|
||||||
|
return child;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void addChildren(List<ReviewNode<T>> children) {
|
||||||
|
children.forEach(each -> each.setParent(this));
|
||||||
|
this.children.addAll(children);
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<ReviewNode<T>> getChildren() {
|
||||||
|
return children;
|
||||||
|
}
|
||||||
|
|
||||||
|
public T getData() {
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setData(T data) {
|
||||||
|
this.data = data;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setParent(ReviewNode<T> parent) {
|
||||||
|
this.parent = parent;
|
||||||
|
}
|
||||||
|
|
||||||
|
public ReviewNode<T> getParent() {
|
||||||
|
return parent;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,54 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@ApiModel(value = "Role List")
|
||||||
|
public class RoleList extends BasePaginatedResult {
|
||||||
|
|
||||||
|
private List<?> roles;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "Returns the list of roles that match the offset and limit parameter values "
|
||||||
|
+ "that were specified.")
|
||||||
|
@JsonProperty("roles")
|
||||||
|
|
||||||
|
public List<?> getList() {
|
||||||
|
return roles;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setList(List<?> roles) {
|
||||||
|
this.roles = roles;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
StringBuilder sb = new StringBuilder();
|
||||||
|
sb.append("{\n");
|
||||||
|
sb.append(" count: ").append(getCount()).append(",\n");
|
||||||
|
sb.append(" roles: [").append(roles).append("\n");
|
||||||
|
sb.append("]}\n");
|
||||||
|
return sb.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,27 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Order which the search results should be shown. Ascending or Descending.
|
||||||
|
*/
|
||||||
|
public enum SortingOrder {
|
||||||
|
ASC, DESC
|
||||||
|
}
|
||||||
|
|
||||||
@ -0,0 +1,22 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
public enum SubAction {
|
||||||
|
INSTALL, UNINSTALL
|
||||||
|
}
|
||||||
@ -0,0 +1,69 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
public class SubscribingDeviceIdHolder {
|
||||||
|
private Map<DeviceIdentifier, Integer> appInstalledDevices = new HashMap<>();
|
||||||
|
private Map<DeviceIdentifier, Integer> appInstallableDevices = new HashMap<>();
|
||||||
|
private Map<DeviceIdentifier, Integer> appReInstallableDevices = new HashMap<>();
|
||||||
|
private Map<DeviceIdentifier, Integer> appReUnInstallableDevices = new HashMap<>();
|
||||||
|
private Map<DeviceIdentifier, Integer> skippedDevices = new HashMap<>();
|
||||||
|
|
||||||
|
public Map<DeviceIdentifier, Integer> getAppInstalledDevices() {
|
||||||
|
return appInstalledDevices;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAppInstalledDevices(Map<DeviceIdentifier, Integer> appInstalledDevices) {
|
||||||
|
this.appInstalledDevices = appInstalledDevices;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map<DeviceIdentifier, Integer> getAppInstallableDevices() {
|
||||||
|
return appInstallableDevices;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAppInstallableDevices(Map<DeviceIdentifier, Integer> appInstallableDevices) {
|
||||||
|
this.appInstallableDevices = appInstallableDevices;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map<DeviceIdentifier, Integer> getAppReInstallableDevices() {
|
||||||
|
return appReInstallableDevices;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAppReInstallableDevices(Map<DeviceIdentifier, Integer> appReInstallableDevices) {
|
||||||
|
this.appReInstallableDevices = appReInstallableDevices;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map<DeviceIdentifier, Integer> getSkippedDevices() { return skippedDevices; }
|
||||||
|
|
||||||
|
public void setSkippedDevices(Map<DeviceIdentifier, Integer> skippedDevices) {
|
||||||
|
this.skippedDevices = skippedDevices;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Map<DeviceIdentifier, Integer> getAppReUnInstallableDevices() {
|
||||||
|
return appReUnInstallableDevices;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAppReUnInstallableDevices(Map<DeviceIdentifier, Integer> appReUnInstallableDevices) {
|
||||||
|
this.appReUnInstallableDevices = appReUnInstallableDevices;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,22 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common;
|
||||||
|
|
||||||
|
public enum SubscriptionType {
|
||||||
|
USER, ROLE, GROUP, DEVICE
|
||||||
|
}
|
||||||
@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
* Copyright (c) 2019, Entgra (pvt) Ltd. (http://entgra.io) All Rights Reserved.
|
||||||
*
|
*
|
||||||
* WSO2 Inc. licenses this file to you under the Apache License,
|
* Entgra (pvt) Ltd. licenses this file to you under the Apache License,
|
||||||
* Version 2.0 (the "License"); you may not use this file except
|
* Version 2.0 (the "License"); you may not use this file except
|
||||||
* in compliance with the License.
|
* in compliance with the License.
|
||||||
* You may obtain a copy of the License at
|
* You may obtain a copy of the License at
|
||||||
@ -15,13 +15,29 @@
|
|||||||
* specific language governing permissions and limitations
|
* specific language governing permissions and limitations
|
||||||
* under the License.
|
* under the License.
|
||||||
*/
|
*/
|
||||||
|
package org.wso2.carbon.device.application.mgt.common;
|
||||||
|
|
||||||
package org.wso2.carbon.certificate.mgt.cert.jaxrs.api.beans;
|
/**
|
||||||
|
* Represents an user.
|
||||||
|
*/
|
||||||
|
public class User {
|
||||||
|
|
||||||
public class EnrollmentCertificate {
|
private String userName;
|
||||||
String serial;
|
|
||||||
String pem;
|
private int tenantId;
|
||||||
int tenantId;
|
|
||||||
|
public User(String userName, int tenantId) {
|
||||||
|
this.userName = userName;
|
||||||
|
this.tenantId = tenantId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUserName() {
|
||||||
|
return userName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUserName(String userName) {
|
||||||
|
this.userName = userName;
|
||||||
|
}
|
||||||
|
|
||||||
public int getTenantId() {
|
public int getTenantId() {
|
||||||
return tenantId;
|
return tenantId;
|
||||||
@ -31,19 +47,8 @@ public class EnrollmentCertificate {
|
|||||||
this.tenantId = tenantId;
|
this.tenantId = tenantId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getSerial() {
|
@Override
|
||||||
return serial;
|
public String toString() {
|
||||||
}
|
return "User-name : " + userName + "\t Tenant-ID : " + tenantId;
|
||||||
|
|
||||||
public void setSerial(String serial) {
|
|
||||||
this.serial = serial;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getPem() {
|
|
||||||
return pem;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setPem(String pem) {
|
|
||||||
this.pem = pem;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -0,0 +1,47 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.config;
|
||||||
|
|
||||||
|
import javax.xml.bind.annotation.XmlElement;
|
||||||
|
import javax.xml.bind.annotation.XmlElementWrapper;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class AppRegistration {
|
||||||
|
|
||||||
|
private List<String> tags;
|
||||||
|
private boolean isAllowToAllDomains;
|
||||||
|
|
||||||
|
@XmlElementWrapper(name = "Tags")
|
||||||
|
@XmlElement(name = "Tag")
|
||||||
|
public List<String> getTags() {
|
||||||
|
return tags;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTags(List<String> tags) {
|
||||||
|
this.tags = tags;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "AllowToAllDomains")
|
||||||
|
public boolean isAllowToAllDomains() {
|
||||||
|
return isAllowToAllDomains;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAllowToAllDomains(boolean allowToAllDomains) {
|
||||||
|
isAllowToAllDomains = allowToAllDomains;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,112 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.config;
|
||||||
|
|
||||||
|
import javax.xml.bind.annotation.XmlElement;
|
||||||
|
|
||||||
|
public class ErrorCallback {
|
||||||
|
|
||||||
|
private String badRequest;
|
||||||
|
private String unauthorized;
|
||||||
|
private String forbidden;
|
||||||
|
private String notFound;
|
||||||
|
private String methodNotAllowed;
|
||||||
|
private String notAcceptable;
|
||||||
|
private String unsupportedMediaType;
|
||||||
|
private String internalServerError;
|
||||||
|
private String defaultPage;
|
||||||
|
|
||||||
|
@XmlElement(name = "BadRequest", required=true)
|
||||||
|
public String getBadRequest() {
|
||||||
|
return badRequest;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBadRequest(String badRequest) {
|
||||||
|
this.badRequest = badRequest;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "Unauthorized", required=true)
|
||||||
|
public String getUnauthorized() {
|
||||||
|
return unauthorized;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUnauthorized(String unauthorized) {
|
||||||
|
this.unauthorized = unauthorized;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "Forbidden", required=true)
|
||||||
|
public String getForbidden() {
|
||||||
|
return forbidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setForbidden(String forbidden) {
|
||||||
|
this.forbidden = forbidden;
|
||||||
|
}
|
||||||
|
@XmlElement(name = "NotFound", required=true)
|
||||||
|
public String getNotFound() {
|
||||||
|
return notFound;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setNotFound(String notFound) {
|
||||||
|
this.notFound = notFound;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "MethodNotAllowed", required=true)
|
||||||
|
public String getMethodNotAllowed() {
|
||||||
|
return methodNotAllowed;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMethodNotAllowed(String methodNotAllowed) {
|
||||||
|
this.methodNotAllowed = methodNotAllowed;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "NotAcceptable", required=true)
|
||||||
|
public String getNotAcceptable() {
|
||||||
|
return notAcceptable;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setNotAcceptable(String notAcceptable) {
|
||||||
|
this.notAcceptable = notAcceptable;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "UnsupportedMediaType", required=true)
|
||||||
|
public String getUnsupportedMediaType() {
|
||||||
|
return unsupportedMediaType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUnsupportedMediaType(String unsupportedMediaType) {
|
||||||
|
this.unsupportedMediaType = unsupportedMediaType;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "InternalServerError", required=true)
|
||||||
|
public String getInternalServerError() {
|
||||||
|
return internalServerError;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setInternalServerError(String internalServerError) {
|
||||||
|
this.internalServerError = internalServerError;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "DefaultPage", required=true)
|
||||||
|
public String getDefaultPage() {
|
||||||
|
return defaultPage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDefaultPage(String defaultPage) {
|
||||||
|
this.defaultPage = defaultPage;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,108 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.config;
|
||||||
|
|
||||||
|
import javax.xml.bind.annotation.XmlAttribute;
|
||||||
|
import javax.xml.bind.annotation.XmlElement;
|
||||||
|
import javax.xml.bind.annotation.XmlElementWrapper;
|
||||||
|
import javax.xml.bind.annotation.XmlRootElement;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This class represents the lifecycle state config
|
||||||
|
*/
|
||||||
|
@XmlRootElement(name = "LifecycleState")
|
||||||
|
public class LifecycleState {
|
||||||
|
|
||||||
|
private String name;
|
||||||
|
private String permission;
|
||||||
|
private List<String> proceedingStates;
|
||||||
|
private boolean isAppInstallable;
|
||||||
|
private boolean isAppUpdatable;
|
||||||
|
private boolean isInitialState;
|
||||||
|
private boolean isEndState;
|
||||||
|
private boolean isDeletableState;
|
||||||
|
|
||||||
|
@XmlAttribute(name = "name")
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElementWrapper(name = "ProceedingStates")
|
||||||
|
@XmlElement(name = "State")
|
||||||
|
public List<String> getProceedingStates() {
|
||||||
|
return proceedingStates;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setProceedingStates(List<String> proceedingStates) {
|
||||||
|
this.proceedingStates = proceedingStates;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "Permission")
|
||||||
|
public String getPermission() {
|
||||||
|
return permission;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPermission(String permission) {
|
||||||
|
this.permission = permission;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "IsAppInstallable")
|
||||||
|
public boolean isAppInstallable() {
|
||||||
|
return isAppInstallable;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAppInstallable(boolean isAppInstallable) {
|
||||||
|
this.isAppInstallable = isAppInstallable;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "IsAppUpdatable")
|
||||||
|
public boolean isAppUpdatable() {
|
||||||
|
return isAppUpdatable;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAppUpdatable(boolean isAppUpdatable) {
|
||||||
|
this.isAppUpdatable = isAppUpdatable;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "IsInitialState")
|
||||||
|
public boolean isInitialState() {
|
||||||
|
return isInitialState;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setInitialState(boolean isInitialState) {
|
||||||
|
this.isInitialState = isInitialState;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "IsEndState")
|
||||||
|
public boolean isEndState() {
|
||||||
|
return isEndState;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEndState(boolean isEndState) {
|
||||||
|
this.isEndState = isEndState;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "IsDeletableState")
|
||||||
|
public boolean isDeletableState() { return isDeletableState; }
|
||||||
|
|
||||||
|
public void setDeletableState(boolean deletableState) { isDeletableState = deletableState; }
|
||||||
|
}
|
||||||
@ -0,0 +1,40 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.config;
|
||||||
|
|
||||||
|
import javax.xml.bind.annotation.XmlElement;
|
||||||
|
|
||||||
|
public class MDMConfig {
|
||||||
|
|
||||||
|
private String artifactDownloadProtocol;
|
||||||
|
private String artifactDownloadEndpoint;
|
||||||
|
|
||||||
|
@XmlElement(name = "ArtifactDownloadProtocol", required=true)
|
||||||
|
public String getArtifactDownloadProtocol() { return artifactDownloadProtocol; }
|
||||||
|
|
||||||
|
public void setArtifactDownloadProtocol(String artifactDownloadProtocol) {
|
||||||
|
this.artifactDownloadProtocol = artifactDownloadProtocol;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "ArtifactDownloadEndpoint", required=true)
|
||||||
|
public String getArtifactDownloadEndpoint() { return artifactDownloadEndpoint; }
|
||||||
|
|
||||||
|
public void setArtifactDownloadEndpoint(String artifactDownloadEndpoint) {
|
||||||
|
this.artifactDownloadEndpoint = artifactDownloadEndpoint;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,44 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.config;
|
||||||
|
|
||||||
|
import javax.xml.bind.annotation.XmlElement;
|
||||||
|
|
||||||
|
public class RatingConfiguration {
|
||||||
|
|
||||||
|
private int minRatingValue;
|
||||||
|
private int maxRatingValue;
|
||||||
|
|
||||||
|
@XmlElement(name = "MinRatingValue")
|
||||||
|
public int getMinRatingValue() {
|
||||||
|
return minRatingValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMinRatingValue(int minRatingValue) {
|
||||||
|
this.minRatingValue = minRatingValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "MaxRatingValue")
|
||||||
|
public int getMaxRatingValue() {
|
||||||
|
return maxRatingValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMaxRatingValue(int maxRatingValue) {
|
||||||
|
this.maxRatingValue = maxRatingValue;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,62 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.config;
|
||||||
|
|
||||||
|
import javax.xml.bind.annotation.XmlElement;
|
||||||
|
import javax.xml.bind.annotation.XmlElementWrapper;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class UIConfiguration {
|
||||||
|
|
||||||
|
private AppRegistration appRegistration;
|
||||||
|
private List<String> scopes;
|
||||||
|
private boolean isSsoEnable;
|
||||||
|
private ErrorCallback errorCallback;
|
||||||
|
|
||||||
|
@XmlElement(name = "AppRegistration", required=true)
|
||||||
|
public AppRegistration getAppRegistration() {
|
||||||
|
return appRegistration;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAppRegistration(AppRegistration appRegistration) {
|
||||||
|
this.appRegistration = appRegistration;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElementWrapper(name = "Scopes")
|
||||||
|
@XmlElement(name = "Scope")
|
||||||
|
public List<String> getScopes() {
|
||||||
|
return scopes;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setScopes(List<String> scopes) {
|
||||||
|
this.scopes = scopes;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "EnableSSO")
|
||||||
|
public boolean isSsoEnable() {
|
||||||
|
return isSsoEnable;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSsoEnable(boolean ssoEnable) {
|
||||||
|
isSsoEnable = ssoEnable;
|
||||||
|
}
|
||||||
|
|
||||||
|
@XmlElement(name = "ErrorCallback", required=true)
|
||||||
|
public ErrorCallback getErrorCallback() { return errorCallback; }
|
||||||
|
|
||||||
|
public void setErrorCallback(ErrorCallback errorCallback) { this.errorCallback = errorCallback; }
|
||||||
|
}
|
||||||
@ -0,0 +1,59 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.dto;
|
||||||
|
|
||||||
|
public class ApiRegistrationProfile {
|
||||||
|
|
||||||
|
private String applicationName;
|
||||||
|
private String tags[];
|
||||||
|
private boolean isAllowedToAllDomains;
|
||||||
|
private boolean isMappingAnExistingOAuthApp;
|
||||||
|
|
||||||
|
public String getApplicationName() {
|
||||||
|
return applicationName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setApplicationName(String applicationName) {
|
||||||
|
this.applicationName = applicationName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String[] getTags() {
|
||||||
|
return tags;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTags(String[] tags) {
|
||||||
|
this.tags = tags;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isAllowedToAllDomains() {
|
||||||
|
return isAllowedToAllDomains;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAllowedToAllDomains(boolean allowedToAllDomains) {
|
||||||
|
isAllowedToAllDomains = allowedToAllDomains;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isMappingAnExistingOAuthApp() {
|
||||||
|
return isMappingAnExistingOAuthApp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMappingAnExistingOAuthApp(boolean mappingAnExistingOAuthApp) {
|
||||||
|
isMappingAnExistingOAuthApp = mappingAnExistingOAuthApp;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,192 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.dto;
|
||||||
|
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@ApiModel(value = "ApplicationDTO", description = "ApplicationDTO represents an Application details.")
|
||||||
|
public class ApplicationDTO {
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "id",
|
||||||
|
value = "The ID given to the application when it is stored in the APPM database")
|
||||||
|
private int id;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "name",
|
||||||
|
value = "Name of the application",
|
||||||
|
required = true)
|
||||||
|
private String name;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "description",
|
||||||
|
value = "Description of the application",
|
||||||
|
required = true)
|
||||||
|
private String description;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "appCategories",
|
||||||
|
value = "Category of the application",
|
||||||
|
required = true,
|
||||||
|
example = "Educational, Gaming, Travel, Entertainment etc")
|
||||||
|
private List<String> appCategories;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "type",
|
||||||
|
value = "Type of the application",
|
||||||
|
required = true,
|
||||||
|
example = "ENTERPRISE, PUBLIC, WEB, WEB_CLIP etc")
|
||||||
|
private String type;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "subType",
|
||||||
|
value = "Subscription type of the application",
|
||||||
|
required = true,
|
||||||
|
example = "PAID, FREE")
|
||||||
|
private String subType;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "paymentCurrency",
|
||||||
|
value = "Payment currency of the application",
|
||||||
|
required = true,
|
||||||
|
example = "$")
|
||||||
|
private String paymentCurrency;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "tags",
|
||||||
|
value = "List of application tags")
|
||||||
|
private List<String> tags;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "unrestrictedRoles",
|
||||||
|
value = "List of roles that users should have to access the application")
|
||||||
|
private List<String> unrestrictedRoles;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "deviceTypeId",
|
||||||
|
value = "Id of the Related device type of the application",
|
||||||
|
example = "1, 2, 3")
|
||||||
|
private int deviceTypeId;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "appRating",
|
||||||
|
value = "Rating of the aplication")
|
||||||
|
private double appRating;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "status",
|
||||||
|
value = "Application status",
|
||||||
|
required = true,
|
||||||
|
example = "RETIRED, ACTIVE")
|
||||||
|
private String status;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "applicationReleaseDTOs",
|
||||||
|
value = "List of application releases",
|
||||||
|
required = true)
|
||||||
|
private List<ApplicationReleaseDTO> applicationReleaseDTOs;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "packageName",
|
||||||
|
value = "package name of the application")
|
||||||
|
private String packageName;
|
||||||
|
|
||||||
|
public String getPackageName() {
|
||||||
|
return packageName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPackageName(String packageName) {
|
||||||
|
this.packageName = packageName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(int id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) { this.name = name; }
|
||||||
|
|
||||||
|
public List<String> getAppCategories() {
|
||||||
|
return appCategories;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAppCategories(List<String> appCategories) { this.appCategories = appCategories; }
|
||||||
|
|
||||||
|
public List<String> getTags() { return tags; }
|
||||||
|
|
||||||
|
public void setTags(List<String> tags) {
|
||||||
|
this.tags = tags;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getType() {
|
||||||
|
return type;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setType(String type) {
|
||||||
|
this.type = type;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSubType() {
|
||||||
|
return subType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSubType(String subType) {
|
||||||
|
this.subType = subType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPaymentCurrency() {
|
||||||
|
return paymentCurrency;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPaymentCurrency(String paymentCurrency) {
|
||||||
|
this.paymentCurrency = paymentCurrency;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<ApplicationReleaseDTO> getApplicationReleaseDTOs() {
|
||||||
|
return applicationReleaseDTOs;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setApplicationReleaseDTOs(List<ApplicationReleaseDTO> applicationReleaseDTOs) {
|
||||||
|
this.applicationReleaseDTOs = applicationReleaseDTOs;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<String> getUnrestrictedRoles() {
|
||||||
|
return unrestrictedRoles;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUnrestrictedRoles(List<String> unrestrictedRoles) {
|
||||||
|
this.unrestrictedRoles = unrestrictedRoles;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getDeviceTypeId() {
|
||||||
|
return deviceTypeId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDeviceTypeId(int deviceTypeId) {
|
||||||
|
this.deviceTypeId = deviceTypeId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getStatus() { return status; }
|
||||||
|
|
||||||
|
public void setStatus(String status) { this.status = status; }
|
||||||
|
|
||||||
|
public String getDescription() { return description; }
|
||||||
|
|
||||||
|
public void setDescription(String description) { this.description = description; }
|
||||||
|
|
||||||
|
public double getAppRating() { return appRating; }
|
||||||
|
|
||||||
|
public void setAppRating(double appRating) { this.appRating = appRating; }
|
||||||
|
}
|
||||||
@ -0,0 +1,60 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.dto;
|
||||||
|
|
||||||
|
import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class ApplicationPolicyDTO {
|
||||||
|
ApplicationDTO applicationDTO;
|
||||||
|
String policy;
|
||||||
|
List<DeviceIdentifier> deviceIdentifierList;
|
||||||
|
String action;
|
||||||
|
|
||||||
|
public List<DeviceIdentifier> getDeviceIdentifierList() {
|
||||||
|
return deviceIdentifierList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDeviceIdentifierList(List<DeviceIdentifier> deviceIdentifierList) {
|
||||||
|
this.deviceIdentifierList = deviceIdentifierList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getAction() {
|
||||||
|
return action;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAction(String action) {
|
||||||
|
this.action = action;
|
||||||
|
}
|
||||||
|
|
||||||
|
public ApplicationDTO getApplicationDTO() {
|
||||||
|
return applicationDTO;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setApplicationDTO(ApplicationDTO applicationDTO) {
|
||||||
|
this.applicationDTO = applicationDTO;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPolicy() {
|
||||||
|
return policy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPolicy(String policy) {
|
||||||
|
this.policy = policy;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,272 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.dto;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
|
||||||
|
|
||||||
|
@ApiModel(value = "ApplicationReleaseDTO", description = "This class holds the details when releasing an ApplicationDTO to application store")
|
||||||
|
@JsonIgnoreProperties({"appHashValue"})
|
||||||
|
public class ApplicationReleaseDTO {
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "id",
|
||||||
|
value = "ID of the application release")
|
||||||
|
private int id;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "description",
|
||||||
|
value = "Description of the application release")
|
||||||
|
private String description;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "version",
|
||||||
|
value = "Version of the application release")
|
||||||
|
private String version;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "uuid",
|
||||||
|
value = "UUID of the application release")
|
||||||
|
private String uuid;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "installerName",
|
||||||
|
value = "ApplicationDTO storing location")
|
||||||
|
private String installerName;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "bannerName",
|
||||||
|
value = "Banner file storing location")
|
||||||
|
private String bannerName;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "iconName",
|
||||||
|
value = "icon file storing location")
|
||||||
|
private String iconName;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "screenshotName1",
|
||||||
|
value = "Screenshot storing location")
|
||||||
|
private String screenshotName1;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "screenshotName2",
|
||||||
|
value = "Screenshot storing location")
|
||||||
|
private String screenshotName2;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "screenshotName3",
|
||||||
|
value = "Screenshot storing location")
|
||||||
|
private String screenshotName3;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "releaseType",
|
||||||
|
value = "Release type of the application release",
|
||||||
|
required = true,
|
||||||
|
example = "alpha, beta etc")
|
||||||
|
private String releaseType;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "price",
|
||||||
|
value = "Price of the application release",
|
||||||
|
required = true)
|
||||||
|
private double price;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "appHashValue",
|
||||||
|
value = "Hash value of the application release")
|
||||||
|
private String appHashValue;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "isSharedWithAllTenants",
|
||||||
|
value = "If application release is shared with all tenants it is eqal to 1 otherwise 0",
|
||||||
|
required = true)
|
||||||
|
private boolean isSharedWithAllTenants;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "metaData",
|
||||||
|
value = "Meta data of the application release",
|
||||||
|
required = true)
|
||||||
|
private String metaData;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "ratedUsers",
|
||||||
|
value = "Number of users who has rated the application release")
|
||||||
|
private int ratedUsers;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "rating",
|
||||||
|
value = "Rating value of the application release")
|
||||||
|
private double rating;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "url",
|
||||||
|
value = "URL which is used for WEB-CLIP")
|
||||||
|
private String url;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "supportedOsVersions",
|
||||||
|
value = "ApplicationDTO release supported OS versions")
|
||||||
|
private String supportedOsVersions;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "currentState",
|
||||||
|
value = "Current state of the application release")
|
||||||
|
private String currentState;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "packageName",
|
||||||
|
value = "ApplicationDTO bundle identifier")
|
||||||
|
private String packageName;
|
||||||
|
|
||||||
|
public ApplicationReleaseDTO() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getRatedUsers() {
|
||||||
|
return ratedUsers;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRatedUsers(int ratedUsers) {
|
||||||
|
this.ratedUsers = ratedUsers;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getRating() {
|
||||||
|
return rating;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRating(double rating) {
|
||||||
|
this.rating = rating;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(int id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setVersion(String version) {
|
||||||
|
this.version = version;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUuid() {
|
||||||
|
return uuid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUuid(String uuid) {
|
||||||
|
this.uuid = uuid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getReleaseType() {
|
||||||
|
return releaseType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setReleaseType(String releaseType) {
|
||||||
|
this.releaseType = releaseType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAppHashValue(String appHashValue) {
|
||||||
|
this.appHashValue = appHashValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIsSharedWithAllTenants(boolean isSharedWithAllTenants) {
|
||||||
|
this.isSharedWithAllTenants = isSharedWithAllTenants;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMetaData(String metaData) {
|
||||||
|
this.metaData = metaData;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getVersion() {
|
||||||
|
return version;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getPrice() {
|
||||||
|
return price;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPrice(double price) {
|
||||||
|
this.price = price;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getAppHashValue() {
|
||||||
|
return appHashValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean getIsSharedWithAllTenants() { return isSharedWithAllTenants; }
|
||||||
|
|
||||||
|
public String getMetaData() {
|
||||||
|
return metaData;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInstallerName() {
|
||||||
|
return installerName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setInstallerName(String installerName) {
|
||||||
|
this.installerName = installerName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getBannerName() {
|
||||||
|
return bannerName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBannerName(String bannerName) {
|
||||||
|
this.bannerName = bannerName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getScreenshotName1() {
|
||||||
|
return screenshotName1;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setScreenshotName1(String screenshotName1) {
|
||||||
|
this.screenshotName1 = screenshotName1;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getScreenshotName2() {
|
||||||
|
return screenshotName2;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setScreenshotName2(String screenshotName2) {
|
||||||
|
this.screenshotName2 = screenshotName2;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getScreenshotName3() {
|
||||||
|
return screenshotName3;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setScreenshotName3(String screenshotName3) {
|
||||||
|
this.screenshotName3 = screenshotName3;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getIconName() {
|
||||||
|
return iconName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIconName(String iconName) {
|
||||||
|
this.iconName = iconName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUrl() {
|
||||||
|
return url;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUrl(String url) {
|
||||||
|
this.url = url;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPackageName(String packageName) {
|
||||||
|
this.packageName = packageName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPackageName() {
|
||||||
|
return packageName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDescription() { return description; }
|
||||||
|
|
||||||
|
public void setDescription(String description) { this.description = description; }
|
||||||
|
|
||||||
|
public String getSupportedOsVersions() { return supportedOsVersions; }
|
||||||
|
|
||||||
|
public void setSupportedOsVersions(String supportedOsVersions) { this.supportedOsVersions = supportedOsVersions; }
|
||||||
|
|
||||||
|
public String getCurrentState() { return currentState; }
|
||||||
|
|
||||||
|
public void setCurrentState(String currentState) { this.currentState = currentState; }
|
||||||
|
}
|
||||||
@ -0,0 +1,39 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.dto;
|
||||||
|
|
||||||
|
public class CategoryDTO {
|
||||||
|
int id;
|
||||||
|
|
||||||
|
String categoryName;
|
||||||
|
|
||||||
|
public int getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(int id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCategoryName() {
|
||||||
|
return categoryName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCategoryName(String categoryName) {
|
||||||
|
this.categoryName = categoryName;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,73 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.dto;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
public class DeviceSubscriptionDTO {
|
||||||
|
|
||||||
|
private int id;
|
||||||
|
private String subscribedBy;
|
||||||
|
private Timestamp subscribedTimestamp;
|
||||||
|
private boolean isUnsubscribed;
|
||||||
|
private String unsubscribedBy;
|
||||||
|
private Timestamp unsubscribedTimestamp;
|
||||||
|
private String actionTriggeredFrom;
|
||||||
|
private String status;
|
||||||
|
private int deviceId;
|
||||||
|
|
||||||
|
public int getId() { return id; }
|
||||||
|
|
||||||
|
public void setId(int id) { this.id = id; }
|
||||||
|
|
||||||
|
public String getSubscribedBy() { return subscribedBy; }
|
||||||
|
|
||||||
|
public void setSubscribedBy(String subscribedBy) { this.subscribedBy = subscribedBy; }
|
||||||
|
|
||||||
|
public Timestamp getSubscribedTimestamp() { return subscribedTimestamp; }
|
||||||
|
|
||||||
|
public void setSubscribedTimestamp(Timestamp subscribedTimestamp) {
|
||||||
|
this.subscribedTimestamp = subscribedTimestamp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isUnsubscribed() { return isUnsubscribed; }
|
||||||
|
|
||||||
|
public void setUnsubscribed(boolean unsubscribed) { isUnsubscribed = unsubscribed; }
|
||||||
|
|
||||||
|
public String getUnsubscribedBy() { return unsubscribedBy; }
|
||||||
|
|
||||||
|
public void setUnsubscribedBy(String unsubscribedBy) { this.unsubscribedBy = unsubscribedBy; }
|
||||||
|
|
||||||
|
public Timestamp getUnsubscribedTimestamp() { return unsubscribedTimestamp; }
|
||||||
|
|
||||||
|
public void setUnsubscribedTimestamp(Timestamp unsubscribedTimestamp) {
|
||||||
|
this.unsubscribedTimestamp = unsubscribedTimestamp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getActionTriggeredFrom() { return actionTriggeredFrom; }
|
||||||
|
|
||||||
|
public void setActionTriggeredFrom(String actionTriggeredFrom) { this.actionTriggeredFrom = actionTriggeredFrom; }
|
||||||
|
|
||||||
|
public String getStatus() { return status; }
|
||||||
|
|
||||||
|
public void setStatus(String status) { this.status = status; }
|
||||||
|
|
||||||
|
public int getDeviceId() { return deviceId; }
|
||||||
|
|
||||||
|
public void setDeviceId(int deviceId) { this.deviceId = deviceId; }
|
||||||
|
}
|
||||||
@ -0,0 +1,63 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.dto;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
public class GroupSubscriptionDTO {
|
||||||
|
private int id;
|
||||||
|
private String subscribedBy;
|
||||||
|
private Timestamp subscribedTimestamp;
|
||||||
|
private boolean isUnsubscribed;
|
||||||
|
private String unsubscribedBy;
|
||||||
|
private Timestamp unsubscribedTimestamp;
|
||||||
|
private String subscribedFrom;
|
||||||
|
private int groupdId;
|
||||||
|
|
||||||
|
public int getId() { return id; }
|
||||||
|
|
||||||
|
public void setId(int id) { this.id = id; }
|
||||||
|
|
||||||
|
public String getSubscribedBy() { return subscribedBy; }
|
||||||
|
|
||||||
|
public void setSubscribedBy(String subscribedBy) { this.subscribedBy = subscribedBy; }
|
||||||
|
|
||||||
|
public Timestamp getSubscribedTimestamp() { return subscribedTimestamp; }
|
||||||
|
|
||||||
|
public void setSubscribedTimestamp(Timestamp subscribedTimestamp) { this.subscribedTimestamp = subscribedTimestamp; }
|
||||||
|
|
||||||
|
public boolean isUnsubscribed() { return isUnsubscribed; }
|
||||||
|
|
||||||
|
public void setUnsubscribed(boolean unsubscribed) { isUnsubscribed = unsubscribed; }
|
||||||
|
|
||||||
|
public String getUnsubscribedBy() { return unsubscribedBy; }
|
||||||
|
|
||||||
|
public void setUnsubscribedBy(String unsubscribedBy) { this.unsubscribedBy = unsubscribedBy; }
|
||||||
|
|
||||||
|
public Timestamp getUnsubscribedTimestamp() { return unsubscribedTimestamp; }
|
||||||
|
|
||||||
|
public void setUnsubscribedTimestamp(Timestamp unsubscribedTimestamp) { this.unsubscribedTimestamp = unsubscribedTimestamp; }
|
||||||
|
|
||||||
|
public String getSubscribedFrom() { return subscribedFrom; }
|
||||||
|
|
||||||
|
public void setSubscribedFrom(String subscribedFrom) { this.subscribedFrom = subscribedFrom; }
|
||||||
|
|
||||||
|
public int getGroupdId() { return groupdId; }
|
||||||
|
|
||||||
|
public void setGroupdId(int groupdId) { this.groupdId = groupdId; }
|
||||||
|
}
|
||||||
@ -0,0 +1,97 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.dto;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
public class ReviewDTO {
|
||||||
|
private int id;
|
||||||
|
private String content;
|
||||||
|
private String username;
|
||||||
|
private Timestamp createdAt;
|
||||||
|
private Timestamp modifiedAt;
|
||||||
|
private int rating;
|
||||||
|
private int rootParentId;
|
||||||
|
private int immediateParentId;
|
||||||
|
private String releaseUuid;
|
||||||
|
private String releaseVersion;
|
||||||
|
|
||||||
|
public int getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(int id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getContent() {
|
||||||
|
return content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setContent(String content) {
|
||||||
|
this.content = content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUsername() {
|
||||||
|
return username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUsername(String username) {
|
||||||
|
this.username = username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Timestamp getCreatedAt() {
|
||||||
|
return createdAt;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCreatedAt(Timestamp createdAt) {
|
||||||
|
this.createdAt = createdAt;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Timestamp getModifiedAt() {
|
||||||
|
return modifiedAt;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setModifiedAt(Timestamp modifiedAt) {
|
||||||
|
this.modifiedAt = modifiedAt;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getRating() {
|
||||||
|
return rating;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRating(int rating) {
|
||||||
|
this.rating = rating;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getRootParentId() { return rootParentId; }
|
||||||
|
|
||||||
|
public void setRootParentId(int rootParentId) { this.rootParentId = rootParentId; }
|
||||||
|
|
||||||
|
public int getImmediateParentId() { return immediateParentId; }
|
||||||
|
|
||||||
|
public void setImmediateParentId(int immediateParentId) { this.immediateParentId = immediateParentId; }
|
||||||
|
|
||||||
|
public String getReleaseUuid() { return releaseUuid; }
|
||||||
|
|
||||||
|
public void setReleaseUuid(String releaseUuid) { this.releaseUuid = releaseUuid; }
|
||||||
|
|
||||||
|
public String getReleaseVersion() { return releaseVersion; }
|
||||||
|
|
||||||
|
public void setReleaseVersion(String releaseVersion) { this.releaseVersion = releaseVersion; }
|
||||||
|
}
|
||||||
@ -0,0 +1,67 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.dto;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
public class RoleSubscriptionDTO {
|
||||||
|
private int id;
|
||||||
|
private String subscribedBy;
|
||||||
|
private Timestamp subscribedTimestamp;
|
||||||
|
private boolean isUnsubscribed;
|
||||||
|
private String unsubscribedBy;
|
||||||
|
private Timestamp unsubscribedTimestamp;
|
||||||
|
private String subscribedFrom;
|
||||||
|
private String roleName;
|
||||||
|
|
||||||
|
public int getId() { return id; }
|
||||||
|
|
||||||
|
public void setId(int id) { this.id = id; }
|
||||||
|
|
||||||
|
public String getSubscribedBy() { return subscribedBy; }
|
||||||
|
|
||||||
|
public void setSubscribedBy(String subscribedBy) { this.subscribedBy = subscribedBy; }
|
||||||
|
|
||||||
|
public Timestamp getSubscribedTimestamp() { return subscribedTimestamp; }
|
||||||
|
|
||||||
|
public void setSubscribedTimestamp(Timestamp subscribedTimestamp) {
|
||||||
|
this.subscribedTimestamp = subscribedTimestamp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isUnsubscribed() { return isUnsubscribed; }
|
||||||
|
|
||||||
|
public void setUnsubscribed(boolean unsubscribed) { isUnsubscribed = unsubscribed; }
|
||||||
|
|
||||||
|
public String getUnsubscribedBy() { return unsubscribedBy; }
|
||||||
|
|
||||||
|
public void setUnsubscribedBy(String unsubscribedBy) { this.unsubscribedBy = unsubscribedBy; }
|
||||||
|
|
||||||
|
public Timestamp getUnsubscribedTimestamp() { return unsubscribedTimestamp; }
|
||||||
|
|
||||||
|
public void setUnsubscribedTimestamp(Timestamp unsubscribedTimestamp) {
|
||||||
|
this.unsubscribedTimestamp = unsubscribedTimestamp;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSubscribedFrom() { return subscribedFrom; }
|
||||||
|
|
||||||
|
public void setSubscribedFrom(String subscribedFrom) { this.subscribedFrom = subscribedFrom; }
|
||||||
|
|
||||||
|
public String getRoleName() { return roleName; }
|
||||||
|
|
||||||
|
public void setRoleName(String roleName) { this.roleName = roleName; }
|
||||||
|
}
|
||||||
@ -0,0 +1,172 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.dto;
|
||||||
|
|
||||||
|
import com.google.gson.Gson;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.ExecutionStatus;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.SubscriptionType;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This class represents a DTO for AP_SCHEDULED_SUBSCRIPTION table
|
||||||
|
*/
|
||||||
|
public class ScheduledSubscriptionDTO {
|
||||||
|
/**
|
||||||
|
* Generated ID of the subscription.
|
||||||
|
*/
|
||||||
|
private int id;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Name of the task which is related to the subscription.
|
||||||
|
*
|
||||||
|
* Task name is a generated field and in the following pattern:
|
||||||
|
* {@code <SUBSCRIPTION-TYPE>_<ACTION>_<HASH-VALUE>}
|
||||||
|
* {@code SUBSCRIPTION-TYPE} - {@see {@linkplain SubscriptionType}}
|
||||||
|
* {@code ACTION} - {@see {@linkplain org.wso2.carbon.device.application.mgt.common.SubAction}
|
||||||
|
* {@code HASH-VALUE} - this is a hash value of the combination of application uuid and the subscriber list.
|
||||||
|
*
|
||||||
|
* Example: {@code DEVICE_INSTALL_e593e00e8ef55efc764295b6aa9ad56b}
|
||||||
|
*/
|
||||||
|
private String taskName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* UUID of the application release which is subscribed to.
|
||||||
|
* {@see {@link org.wso2.carbon.device.application.mgt.common.response.ApplicationRelease}}
|
||||||
|
*/
|
||||||
|
private String applicationUUID;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* List of subscribers for the application release. The type of the list depends on the subscription type.
|
||||||
|
* {@see {@link SubscriptionType}}. If the subscription type is {@code SubscriptionType.DEVICE} the type will be
|
||||||
|
* {@link org.wso2.carbon.device.mgt.common.DeviceIdentifier} and if not the type will be {@link String}.
|
||||||
|
*/
|
||||||
|
private List<?> subscriberList;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Status of the subscription. {@see {@link ExecutionStatus}}
|
||||||
|
*/
|
||||||
|
private ExecutionStatus status;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Scheduled time of subscription.
|
||||||
|
*/
|
||||||
|
private LocalDateTime scheduledAt;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Username of the scheduler.
|
||||||
|
*/
|
||||||
|
private String scheduledBy;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If the subscription is marked as deleted or not.
|
||||||
|
* {@code true} means that the related task is removed from the {@link org.wso2.carbon.ntask.core.TaskManager}.
|
||||||
|
*/
|
||||||
|
private boolean deleted;
|
||||||
|
|
||||||
|
public ScheduledSubscriptionDTO() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public ScheduledSubscriptionDTO(String taskName, String applicationUUID, LocalDateTime scheduledAt,
|
||||||
|
List<?> subscriberList, String scheduledBy) {
|
||||||
|
this.taskName = taskName;
|
||||||
|
this.applicationUUID = applicationUUID;
|
||||||
|
this.scheduledAt = scheduledAt;
|
||||||
|
this.subscriberList = subscriberList;
|
||||||
|
this.scheduledBy = scheduledBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(int id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getTaskName() {
|
||||||
|
return taskName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTaskName(String taskName) {
|
||||||
|
this.taskName = taskName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getApplicationUUID() {
|
||||||
|
return applicationUUID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setApplicationUUID(String applicationUUID) {
|
||||||
|
this.applicationUUID = applicationUUID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<?> getSubscriberList() {
|
||||||
|
return subscriberList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSubscriberList(List<?> subscriberList) {
|
||||||
|
this.subscriberList = subscriberList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public ExecutionStatus getStatus() {
|
||||||
|
return status;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setStatus(ExecutionStatus status) {
|
||||||
|
this.status = status;
|
||||||
|
}
|
||||||
|
|
||||||
|
public LocalDateTime getScheduledAt() {
|
||||||
|
return scheduledAt;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setScheduledAt(LocalDateTime scheduledAt) {
|
||||||
|
this.scheduledAt = scheduledAt;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getScheduledBy() {
|
||||||
|
return scheduledBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setScheduledBy(String scheduledBy) {
|
||||||
|
this.scheduledBy = scheduledBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return the string representation of the subscriber list.
|
||||||
|
*/
|
||||||
|
public String getSubscribersString() {
|
||||||
|
if (this.taskName.startsWith(SubscriptionType.DEVICE.toString())) {
|
||||||
|
return new Gson().toJson(this.subscriberList);
|
||||||
|
} else {
|
||||||
|
return this.subscriberList.stream().map(String.class::cast).collect(Collectors.joining(","));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isDeleted() {
|
||||||
|
return deleted;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDeleted(boolean deleted) {
|
||||||
|
this.deleted = deleted;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,41 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.dto;
|
||||||
|
|
||||||
|
public class TagDTO {
|
||||||
|
|
||||||
|
int id;
|
||||||
|
|
||||||
|
String tagName;
|
||||||
|
|
||||||
|
public int getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(int id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getTagName() {
|
||||||
|
return tagName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTagName(String tagName) {
|
||||||
|
this.tagName = tagName;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.dto;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
public class UserSubscriptionDTO {
|
||||||
|
private int id;
|
||||||
|
private String subscribedBy;
|
||||||
|
private Timestamp subscribedTimestamp;
|
||||||
|
private boolean isUnsubscribed;
|
||||||
|
private String unsubscribedBy;
|
||||||
|
private Timestamp unsubscribedTimestamp;
|
||||||
|
private String subscribedFrom;
|
||||||
|
private String userName;
|
||||||
|
}
|
||||||
@ -0,0 +1,28 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.exception;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Exception that will be thrown during Application Category Management.
|
||||||
|
*/
|
||||||
|
public class ApplicationCategoryManagementException extends ApplicationManagementException {
|
||||||
|
public ApplicationCategoryManagementException(String message) {
|
||||||
|
super(message);
|
||||||
|
setMessage(message);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,46 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.exception;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Represents the exception thrown during application management.
|
||||||
|
*/
|
||||||
|
public class ApplicationManagementException extends Exception {
|
||||||
|
private String message;
|
||||||
|
|
||||||
|
public ApplicationManagementException(String message, Throwable throwable) {
|
||||||
|
super(message, throwable);
|
||||||
|
setMessage(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
public ApplicationManagementException(String message) {
|
||||||
|
super(message);
|
||||||
|
setMessage(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
public ApplicationManagementException() {
|
||||||
|
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public String getMessage() {
|
||||||
|
return message;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMessage(String message) {
|
||||||
|
this.message = message;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.exception;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Represents the exception thrown during storing and retrieving the artifacts.
|
||||||
|
*/
|
||||||
|
public class ApplicationStorageManagementException extends ResourceManagementException {
|
||||||
|
public ApplicationStorageManagementException(String message, Throwable ex) {
|
||||||
|
super(message, ex);
|
||||||
|
}
|
||||||
|
|
||||||
|
public ApplicationStorageManagementException(String message) {
|
||||||
|
super(message);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,33 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.exception;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Exception thrown due to Database Connection issues.
|
||||||
|
*/
|
||||||
|
public class DBConnectionException extends ApplicationManagementException {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = -3151279331929070297L;
|
||||||
|
|
||||||
|
public DBConnectionException(String message, Throwable cause) {
|
||||||
|
super(message, cause);
|
||||||
|
}
|
||||||
|
|
||||||
|
public DBConnectionException(String msg) {
|
||||||
|
super(msg);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,46 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.exception;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Represents the exception thrown during device connections.
|
||||||
|
*/
|
||||||
|
public class DeviceConnectorException extends Exception {
|
||||||
|
private String message;
|
||||||
|
|
||||||
|
public DeviceConnectorException(String message, Throwable throwable) {
|
||||||
|
super(message, throwable);
|
||||||
|
setMessage(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
public DeviceConnectorException(String message) {
|
||||||
|
super(message);
|
||||||
|
setMessage(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
public DeviceConnectorException() {
|
||||||
|
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public String getMessage() {
|
||||||
|
return message;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMessage(String message) {
|
||||||
|
this.message = message;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,38 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.exception;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Exception thrown due to an issue in database transactions.
|
||||||
|
*/
|
||||||
|
public class IllegalTransactionStateException extends RuntimeException {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = -3151279331929070297L;
|
||||||
|
|
||||||
|
public IllegalTransactionStateException(String msg, Exception nestedEx) {
|
||||||
|
super(msg, nestedEx);
|
||||||
|
}
|
||||||
|
|
||||||
|
public IllegalTransactionStateException(String message, Throwable cause) {
|
||||||
|
super(message, cause);
|
||||||
|
}
|
||||||
|
|
||||||
|
public IllegalTransactionStateException(String msg) {
|
||||||
|
super(msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,32 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.exception;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Exception thrown due to invalid configurations provided for Application Management.
|
||||||
|
*/
|
||||||
|
public class InvalidConfigurationException extends ApplicationManagementException {
|
||||||
|
|
||||||
|
public InvalidConfigurationException(String message, Throwable throwable) {
|
||||||
|
super(message, throwable);
|
||||||
|
}
|
||||||
|
|
||||||
|
public InvalidConfigurationException(String message) {
|
||||||
|
super(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.exception;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Exception caused during the lifecycle management.
|
||||||
|
*/
|
||||||
|
public class LifecycleManagementException extends ApplicationManagementException {
|
||||||
|
|
||||||
|
public LifecycleManagementException(String message, Throwable ex) {
|
||||||
|
super(message, ex);
|
||||||
|
}
|
||||||
|
|
||||||
|
public LifecycleManagementException(String message) {
|
||||||
|
super(message);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,32 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.exception;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Represents the exception thrown during validating the request.
|
||||||
|
*/
|
||||||
|
public class RequestValidatingException extends Exception{
|
||||||
|
|
||||||
|
public RequestValidatingException(String message, Throwable ex) {
|
||||||
|
super(message, ex);
|
||||||
|
}
|
||||||
|
|
||||||
|
public RequestValidatingException(String message) {
|
||||||
|
super(message);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.exception;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Represents the exception that will be thrown when there is an issue while managing the resources.
|
||||||
|
*/
|
||||||
|
public class ResourceManagementException extends Exception {
|
||||||
|
public ResourceManagementException(String message, Throwable ex) {
|
||||||
|
super(message, ex);
|
||||||
|
}
|
||||||
|
|
||||||
|
public ResourceManagementException(String message) {
|
||||||
|
super(message);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,43 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.exception;
|
||||||
|
|
||||||
|
public class ReviewDoesNotExistException extends Exception {
|
||||||
|
private String message;
|
||||||
|
|
||||||
|
public ReviewDoesNotExistException(String message, Throwable throwable) {
|
||||||
|
super(message, throwable);
|
||||||
|
setMessage(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
public ReviewDoesNotExistException(String message) {
|
||||||
|
super(message);
|
||||||
|
setMessage(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
public ReviewDoesNotExistException() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override public String getMessage() {
|
||||||
|
return message;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMessage(String message) {
|
||||||
|
this.message = message;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,43 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.exception;
|
||||||
|
|
||||||
|
public class ReviewManagementException extends Exception {
|
||||||
|
private String message;
|
||||||
|
|
||||||
|
public ReviewManagementException(String message, Throwable throwable) {
|
||||||
|
super(message, throwable);
|
||||||
|
setMessage(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
public ReviewManagementException(String message) {
|
||||||
|
super(message);
|
||||||
|
setMessage(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
public ReviewManagementException() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override public String getMessage() {
|
||||||
|
return message;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMessage(String message) {
|
||||||
|
this.message = message;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,45 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.exception;
|
||||||
|
|
||||||
|
public class SubscriptionManagementException extends Exception {
|
||||||
|
private String message;
|
||||||
|
|
||||||
|
public SubscriptionManagementException(String message, Throwable throwable) {
|
||||||
|
super(message, throwable);
|
||||||
|
setMessage(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
public SubscriptionManagementException(String message) {
|
||||||
|
super(message);
|
||||||
|
setMessage(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
public SubscriptionManagementException() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override public String getMessage() {
|
||||||
|
return message;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMessage(String message) {
|
||||||
|
this.message = message;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,38 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.exception;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Exception thrown due to an issue in TransactionManagement of Database.
|
||||||
|
*/
|
||||||
|
public class TransactionManagementException extends ApplicationManagementException {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = -3151279321929070297L;
|
||||||
|
|
||||||
|
public TransactionManagementException(String msg, Exception nestedEx) {
|
||||||
|
super(msg, nestedEx);
|
||||||
|
}
|
||||||
|
|
||||||
|
public TransactionManagementException(String message, Throwable cause) {
|
||||||
|
super(message, cause);
|
||||||
|
}
|
||||||
|
|
||||||
|
public TransactionManagementException(String msg) {
|
||||||
|
super(msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,39 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.exception;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This runtime exception will be thrown if the server has configured with unsupported DB engine.
|
||||||
|
*/
|
||||||
|
public class UnsupportedDatabaseEngineException extends RuntimeException {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = -3151279311929070297L;
|
||||||
|
|
||||||
|
public UnsupportedDatabaseEngineException(String msg, Exception nestedEx) {
|
||||||
|
super(msg, nestedEx);
|
||||||
|
}
|
||||||
|
|
||||||
|
public UnsupportedDatabaseEngineException(String message, Throwable cause) {
|
||||||
|
super(message, cause);
|
||||||
|
}
|
||||||
|
|
||||||
|
public UnsupportedDatabaseEngineException(String msg) {
|
||||||
|
super(msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,36 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.exception;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This specialized exception is thrown by the Visibility Manager during unexpected behaviour
|
||||||
|
* or unsupported parameters.
|
||||||
|
*/
|
||||||
|
public class VisibilityManagementException extends ApplicationManagementException {
|
||||||
|
|
||||||
|
public VisibilityManagementException(String msg, Exception nestedEx) {
|
||||||
|
super(msg, nestedEx);
|
||||||
|
}
|
||||||
|
|
||||||
|
public VisibilityManagementException(String message, Throwable cause) {
|
||||||
|
super(message, cause);
|
||||||
|
}
|
||||||
|
|
||||||
|
public VisibilityManagementException(String msg) {
|
||||||
|
super(msg);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,162 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.response;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class Application {
|
||||||
|
@ApiModelProperty(name = "id",
|
||||||
|
value = "ID of the application",
|
||||||
|
required = true)
|
||||||
|
private int id;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "name",
|
||||||
|
value = "Name of the application",
|
||||||
|
required = true)
|
||||||
|
private String name;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "description",
|
||||||
|
value = "Description of the application",
|
||||||
|
required = true)
|
||||||
|
private String description;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "categories",
|
||||||
|
value = "CategoryDTO of the application",
|
||||||
|
required = true,
|
||||||
|
example = "Educational, Gaming, Travel, Entertainment etc")
|
||||||
|
private List<String> categories;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "type",
|
||||||
|
value = "Type of the application",
|
||||||
|
required = true,
|
||||||
|
example = "ENTERPRISE, PUBLIC, WEB, WEB_CLIP etc")
|
||||||
|
private String type;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "isAndroidEnterpriseApp",
|
||||||
|
value = "Android enterprise app or not",
|
||||||
|
required = true,
|
||||||
|
example = "true or false")
|
||||||
|
private boolean isAndroidEnterpriseApp;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "subMethod",
|
||||||
|
value = "Subscription type of the application",
|
||||||
|
required = true,
|
||||||
|
example = "PAID, FREE")
|
||||||
|
private String subMethod;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "paymentCurrency",
|
||||||
|
value = "Payment currency of the application",
|
||||||
|
required = true,
|
||||||
|
example = "$")
|
||||||
|
private String paymentCurrency;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "tags",
|
||||||
|
value = "List of application tags")
|
||||||
|
private List<String> tags;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "unrestrictedRoles",
|
||||||
|
value = "List of roles that users should have to access the application")
|
||||||
|
private List<String> unrestrictedRoles;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "deviceType",
|
||||||
|
value = "Related device type of the application",
|
||||||
|
required = true,
|
||||||
|
example = "IoS, Android, Arduino, RaspberryPi etc")
|
||||||
|
private String deviceType;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "rating",
|
||||||
|
value = "Application Rating")
|
||||||
|
private double rating;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "applicationReleases",
|
||||||
|
value = "List of application releases",
|
||||||
|
required = true)
|
||||||
|
private List<ApplicationRelease> applicationReleases;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "packageName",
|
||||||
|
value = "package name of the application")
|
||||||
|
private String packageName;
|
||||||
|
|
||||||
|
public String getPackageName() {
|
||||||
|
return packageName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPackageName(String packageName) {
|
||||||
|
this.packageName = packageName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getId() { return id; }
|
||||||
|
|
||||||
|
public void setId(int id) { this.id = id; }
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) { this.name = name; }
|
||||||
|
|
||||||
|
public List<String> getCategories() {
|
||||||
|
return categories;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCategories(List<String> categories) {
|
||||||
|
this.categories = categories;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<String> getTags() { return tags; }
|
||||||
|
|
||||||
|
public void setTags(List<String> tags) { this.tags = tags; }
|
||||||
|
|
||||||
|
public String getType() { return type; }
|
||||||
|
|
||||||
|
public void setType(String type) { this.type = type; }
|
||||||
|
|
||||||
|
public String getSubMethod() { return subMethod; }
|
||||||
|
|
||||||
|
public void setSubMethod(String subMethod) { this.subMethod = subMethod; }
|
||||||
|
|
||||||
|
public String getPaymentCurrency() { return paymentCurrency; }
|
||||||
|
|
||||||
|
public void setPaymentCurrency(String paymentCurrency) { this.paymentCurrency = paymentCurrency; }
|
||||||
|
|
||||||
|
public List<ApplicationRelease> getApplicationReleases() { return applicationReleases; }
|
||||||
|
|
||||||
|
public void setApplicationReleases(List<ApplicationRelease> applicationReleases) {
|
||||||
|
this.applicationReleases = applicationReleases; }
|
||||||
|
|
||||||
|
public List<String> getUnrestrictedRoles() { return unrestrictedRoles; }
|
||||||
|
|
||||||
|
public void setUnrestrictedRoles(List<String> unrestrictedRoles) { this.unrestrictedRoles = unrestrictedRoles; }
|
||||||
|
|
||||||
|
public String getDeviceType() { return deviceType; }
|
||||||
|
|
||||||
|
public void setDeviceType(String deviceType) { this.deviceType = deviceType; }
|
||||||
|
|
||||||
|
public String getDescription() { return description; }
|
||||||
|
|
||||||
|
public void setDescription(String description) { this.description = description; }
|
||||||
|
|
||||||
|
public double getRating() { return rating; }
|
||||||
|
|
||||||
|
public void setRating(double rating) { this.rating = rating; }
|
||||||
|
|
||||||
|
public boolean isAndroidEnterpriseApp() { return isAndroidEnterpriseApp; }
|
||||||
|
|
||||||
|
public void setAndroidEnterpriseApp(boolean androidEnterpriseApp) { isAndroidEnterpriseApp = androidEnterpriseApp; }
|
||||||
|
}
|
||||||
@ -0,0 +1,165 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.response;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@ApiModel(value = "ApplicationReleaseDTO", description = "This class holds the details when releasing an ApplicationDTO to application store")
|
||||||
|
public class ApplicationRelease {
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "description",
|
||||||
|
value = "Description of the application release")
|
||||||
|
private String description;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "version",
|
||||||
|
value = "Version of the application release")
|
||||||
|
private String version;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "uuid",
|
||||||
|
value = "UUID of the application release")
|
||||||
|
private String uuid;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "installerPath",
|
||||||
|
value = "ApplicationDTO storing location")
|
||||||
|
private String installerPath;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "bannerPath",
|
||||||
|
value = "Banner file storing location")
|
||||||
|
private String bannerPath;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "iconPath",
|
||||||
|
value = "icon file storing location")
|
||||||
|
private String iconPath;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "screenshots",
|
||||||
|
value = "Screenshot storing location")
|
||||||
|
private List<String> screenshots;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "releaseType",
|
||||||
|
value = "Release type of the application release",
|
||||||
|
required = true,
|
||||||
|
example = "alpha, beta etc")
|
||||||
|
private String releaseType;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "currentStatus",
|
||||||
|
value = "CurrentStatus of the Application Release.",
|
||||||
|
required = true,
|
||||||
|
example = "CREATED, IN-REVIEW, PUBLISHED etc")
|
||||||
|
private String currentStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "price",
|
||||||
|
value = "Price of the application release",
|
||||||
|
required = true)
|
||||||
|
private double price;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "isSharedWithAllTenants",
|
||||||
|
value = "If application release is shared with all tenants it is eqal to 1 otherwise 0",
|
||||||
|
required = true)
|
||||||
|
private boolean isSharedWithAllTenants;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "metaData",
|
||||||
|
value = "Meta data of the application release",
|
||||||
|
required = true)
|
||||||
|
private String metaData;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "supportedOsVersions",
|
||||||
|
value = "ApplicationDTO release supported OS versions")
|
||||||
|
private String supportedOsVersions;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "rating",
|
||||||
|
value = "Application Rating")
|
||||||
|
private double rating;
|
||||||
|
|
||||||
|
public String getReleaseType() {
|
||||||
|
return releaseType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setReleaseType(String releaseType) {
|
||||||
|
this.releaseType = releaseType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIsSharedWithAllTenants(boolean isSharedWithAllTenants) {
|
||||||
|
this.isSharedWithAllTenants = isSharedWithAllTenants;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMetaData(String metaData) {
|
||||||
|
this.metaData = metaData;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getPrice() {
|
||||||
|
return price;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPrice(double price) {
|
||||||
|
this.price = price;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean getIsSharedWithAllTenants() {
|
||||||
|
return isSharedWithAllTenants;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMetaData() {
|
||||||
|
return metaData;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDescription() { return description; }
|
||||||
|
|
||||||
|
public void setDescription(String description) { this.description = description; }
|
||||||
|
|
||||||
|
public String getVersion() { return version; }
|
||||||
|
|
||||||
|
public void setVersion(String version) { this.version = version; }
|
||||||
|
|
||||||
|
public String getUuid() { return uuid; }
|
||||||
|
|
||||||
|
public void setUuid(String uuid) { this.uuid = uuid; }
|
||||||
|
|
||||||
|
public String getInstallerPath() { return installerPath; }
|
||||||
|
|
||||||
|
public void setInstallerPath(String installerPath) { this.installerPath = installerPath; }
|
||||||
|
|
||||||
|
public String getBannerPath() { return bannerPath; }
|
||||||
|
|
||||||
|
public void setBannerPath(String bannerPath) { this.bannerPath = bannerPath; }
|
||||||
|
|
||||||
|
public String getIconPath() { return iconPath; }
|
||||||
|
|
||||||
|
public void setIconPath(String iconPath) { this.iconPath = iconPath; }
|
||||||
|
|
||||||
|
public boolean isSharedWithAllTenants() { return isSharedWithAllTenants; }
|
||||||
|
|
||||||
|
public void setSharedWithAllTenants(boolean sharedWithAllTenants) { isSharedWithAllTenants = sharedWithAllTenants; }
|
||||||
|
|
||||||
|
public String getSupportedOsVersions() { return supportedOsVersions; }
|
||||||
|
|
||||||
|
public void setSupportedOsVersions(String supportedOsVersions) { this.supportedOsVersions = supportedOsVersions; }
|
||||||
|
|
||||||
|
public String getCurrentStatus() { return currentStatus; }
|
||||||
|
|
||||||
|
public void setCurrentStatus(String currentStatus) { this.currentStatus = currentStatus; }
|
||||||
|
|
||||||
|
public double getRating() { return rating; }
|
||||||
|
|
||||||
|
public void setRating(double rating) { this.rating = rating; }
|
||||||
|
|
||||||
|
public List<String> getScreenshots() { return screenshots; }
|
||||||
|
|
||||||
|
public void setScreenshots(List<String> screenshots) { this.screenshots = screenshots; }
|
||||||
|
}
|
||||||
@ -0,0 +1,41 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.response;
|
||||||
|
|
||||||
|
public class Category {
|
||||||
|
|
||||||
|
private String categoryName;
|
||||||
|
|
||||||
|
private boolean isCategoryDeletable;
|
||||||
|
|
||||||
|
public String getCategoryName() {
|
||||||
|
return categoryName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCategoryName(String categoryName) {
|
||||||
|
this.categoryName = categoryName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isCategoryDeletable() {
|
||||||
|
return isCategoryDeletable;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCategoryDeletable(boolean categoryDeletable) {
|
||||||
|
isCategoryDeletable = categoryDeletable;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,115 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.response;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@ApiModel(value = "Review", description = "Review represents the user's review for an application release")
|
||||||
|
public class Review {
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "id", value = "Review ID.")
|
||||||
|
private int id;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "content", value = "Review message.")
|
||||||
|
private String content;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "username", value = "Username odf the Review creator")
|
||||||
|
private String username;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "createdAt", value = "Review created timestamp.")
|
||||||
|
private Timestamp createdAt;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "createdAt", value = "Review modified timestamp.")
|
||||||
|
private Timestamp modifiedAt;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "rating", value = "Rating value of the application release")
|
||||||
|
private int rating;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "releaseUuid", value = "UUID of the review associated application")
|
||||||
|
private String releaseUuid;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "releaseVersion", value = "Version of the review associated application")
|
||||||
|
private String releaseVersion;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "replies", value = "Replying reviews")
|
||||||
|
private List<Review> replies;
|
||||||
|
|
||||||
|
public int getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(int id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getContent() {
|
||||||
|
return content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setContent(String content) {
|
||||||
|
this.content = content;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUsername() {
|
||||||
|
return username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUsername(String username) {
|
||||||
|
this.username = username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Timestamp getCreatedAt() {
|
||||||
|
return createdAt;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCreatedAt(Timestamp createdAt) {
|
||||||
|
this.createdAt = createdAt;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Timestamp getModifiedAt() {
|
||||||
|
return modifiedAt;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setModifiedAt(Timestamp modifiedAt) {
|
||||||
|
this.modifiedAt = modifiedAt;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getRating() {
|
||||||
|
return rating;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRating(int rating) {
|
||||||
|
this.rating = rating;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Review> getReplies() { return replies; }
|
||||||
|
|
||||||
|
public void setReplies(List<Review> replies) { this.replies = replies; }
|
||||||
|
|
||||||
|
public String getReleaseUuid() { return releaseUuid; }
|
||||||
|
|
||||||
|
public void setReleaseUuid(String releaseUuid) { this.releaseUuid = releaseUuid; }
|
||||||
|
|
||||||
|
public String getReleaseVersion() { return releaseVersion; }
|
||||||
|
|
||||||
|
public void setReleaseVersion(String releaseVersion) { this.releaseVersion = releaseVersion; }
|
||||||
|
}
|
||||||
@ -0,0 +1,41 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.response;
|
||||||
|
|
||||||
|
public class Tag {
|
||||||
|
|
||||||
|
private String tagName;
|
||||||
|
|
||||||
|
private boolean isTagDeletable;
|
||||||
|
|
||||||
|
public String getTagName() {
|
||||||
|
return tagName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTagName(String tagName) {
|
||||||
|
this.tagName = tagName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isTagDeletable() {
|
||||||
|
return isTagDeletable;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTagDeletable(boolean tagDeletable) {
|
||||||
|
isTagDeletable = tagDeletable;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,276 @@
|
|||||||
|
/* Copyright (c) 2019, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. 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.device.application.mgt.common.services;
|
||||||
|
|
||||||
|
import org.apache.cxf.jaxrs.ext.multipart.Attachment;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.ApplicationArtifact;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.LifecycleChanger;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.ApplicationList;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.dto.ApplicationReleaseDTO;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.Filter;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.LifecycleState;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.exception.ApplicationManagementException;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.exception.RequestValidatingException;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.response.Application;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.response.ApplicationRelease;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.response.Category;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.response.Tag;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.wrapper.CustomAppReleaseWrapper;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.wrapper.CustomAppWrapper;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.wrapper.EntAppReleaseWrapper;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.wrapper.ApplicationUpdateWrapper;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.wrapper.ApplicationWrapper;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.wrapper.PublicAppReleaseWrapper;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.wrapper.PublicAppWrapper;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.wrapper.WebAppReleaseWrapper;
|
||||||
|
import org.wso2.carbon.device.application.mgt.common.wrapper.WebAppWrapper;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This interface manages the application creation, deletion and editing of the application.
|
||||||
|
*/
|
||||||
|
public interface ApplicationManager {
|
||||||
|
|
||||||
|
/***
|
||||||
|
* The method is responsible to add new application into entgra App Manager.
|
||||||
|
*
|
||||||
|
* @param applicationWrapper Application that need to be created.
|
||||||
|
* @param applicationArtifact contains artifact data. i.e image name and stream, icon name and stream etc.
|
||||||
|
* @return {@link Application}
|
||||||
|
* @throws ApplicationManagementException Catch all other throwing exceptions and throw {@link ApplicationManagementException}
|
||||||
|
*/
|
||||||
|
Application createEntApp(ApplicationWrapper applicationWrapper, ApplicationArtifact applicationArtifact)
|
||||||
|
throws ApplicationManagementException;
|
||||||
|
|
||||||
|
Application createWebClip(WebAppWrapper webAppWrapper, ApplicationArtifact applicationArtifact)
|
||||||
|
throws ApplicationManagementException;
|
||||||
|
|
||||||
|
Application createPublicApp(PublicAppWrapper publicAppWrapper, ApplicationArtifact applicationArtifact)
|
||||||
|
throws ApplicationManagementException;
|
||||||
|
|
||||||
|
Application createCustomApp(CustomAppWrapper customAppWrapper, ApplicationArtifact applicationArtifact)
|
||||||
|
throws ApplicationManagementException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Updates an already existing application.
|
||||||
|
*
|
||||||
|
* @param applicationId ID of the application
|
||||||
|
* @param applicationUpdateWrapper Application data that need to be updated.
|
||||||
|
* @return Updated Application
|
||||||
|
* @throws ApplicationManagementException ApplicationDTO Management Exception
|
||||||
|
*/
|
||||||
|
Application updateApplication(int applicationId, ApplicationUpdateWrapper applicationUpdateWrapper)
|
||||||
|
throws ApplicationManagementException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Delete an application identified by the unique ID.
|
||||||
|
*
|
||||||
|
* @param applicationId ID for tha application
|
||||||
|
* @throws ApplicationManagementException ApplicationDTO Management Exception
|
||||||
|
*/
|
||||||
|
void deleteApplication(int applicationId) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retire an application identified by the unique ID.
|
||||||
|
*
|
||||||
|
* @param applicationId ID for tha application
|
||||||
|
* @throws ApplicationManagementException ApplicationDTO Management Exception
|
||||||
|
*/
|
||||||
|
void retireApplication(int applicationId) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Delete an application identified by the unique ID.
|
||||||
|
*
|
||||||
|
* @param releaseUuid UUID of tha application release
|
||||||
|
* @throws ApplicationManagementException ApplicationDTO Management Exception
|
||||||
|
*/
|
||||||
|
void deleteApplicationRelease(String releaseUuid) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* To get the applications based on the search filter.
|
||||||
|
*
|
||||||
|
* @param filter Search filter
|
||||||
|
* @return Applications that matches the given filter criteria.
|
||||||
|
* @throws ApplicationManagementException ApplicationDTO Management Exception
|
||||||
|
*/
|
||||||
|
ApplicationList getApplications(Filter filter) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* To get the Application for given Id.
|
||||||
|
*
|
||||||
|
* @param id id of the ApplicationDTO
|
||||||
|
* @param state state of the ApplicationDTO
|
||||||
|
* @return the ApplicationDTO identified by the ID
|
||||||
|
* @throws ApplicationManagementException ApplicationDTO Management Exception.
|
||||||
|
*/
|
||||||
|
Application getApplicationById(int id, String state) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* To get the Application Release for given uuid.
|
||||||
|
*
|
||||||
|
* @param uuid uuid of the ApplicationDTO
|
||||||
|
* @return the Application Release identified by the UUID
|
||||||
|
* @throws ApplicationManagementException Application Management Exception.
|
||||||
|
*/
|
||||||
|
Application getApplicationByUuid(String uuid) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* To get the ApplicationDTO for given application relase UUID.
|
||||||
|
*
|
||||||
|
* @param uuid UUID of the ApplicationDTO
|
||||||
|
* @param state state of the ApplicationDTO
|
||||||
|
* @return the ApplicationDTO identified by the ID
|
||||||
|
* @throws ApplicationManagementException ApplicationDTO Management Exception.
|
||||||
|
*/
|
||||||
|
Application getApplicationByUuid(String uuid, String state) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* To get lifecycle state change flow of a particular Application Release.
|
||||||
|
*
|
||||||
|
* @param releaseUuid UUID of the Application Release.
|
||||||
|
* @return the List of LifecycleStates which represent the lifecycle change flow of the application releases.
|
||||||
|
* @throws ApplicationManagementException Application Management Exception.
|
||||||
|
*/
|
||||||
|
List<LifecycleState> getLifecycleStateChangeFlow(String releaseUuid) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* To get all the releases of a particular ApplicationDTO.
|
||||||
|
*
|
||||||
|
* @param releaseUuid UUID of the ApplicationDTO Release.
|
||||||
|
* @param lifecycleChanger Lifecycle changer that contains the action and the reson for the change.
|
||||||
|
* @throws ApplicationManagementException ApplicationDTO Management Exception.
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
ApplicationRelease changeLifecycleState(String releaseUuid, LifecycleChanger lifecycleChanger)
|
||||||
|
throws ApplicationManagementException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* To update release images such as icons, banner and screenshots.
|
||||||
|
*
|
||||||
|
* @param uuid uuid of the ApplicationDTO
|
||||||
|
* @param applicationArtifact Application artifact that contains names and input streams of the application artifacts.
|
||||||
|
* @throws ApplicationManagementException ApplicationDTO Management Exception.
|
||||||
|
*/
|
||||||
|
void updateApplicationImageArtifact(String uuid, ApplicationArtifact applicationArtifact) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* To update release images.
|
||||||
|
*
|
||||||
|
* @param deviceType Application artifact compatible device type name.
|
||||||
|
* @param uuid uuid of the ApplicationDTO
|
||||||
|
* @param applicationArtifact Application artifact that contains names and input streams of the application artifacts.
|
||||||
|
* @throws ApplicationManagementException ApplicationDTO Management Exception.
|
||||||
|
*/
|
||||||
|
void updateApplicationArtifact(String deviceType, String uuid,
|
||||||
|
ApplicationArtifact applicationArtifact) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* To create an application release for an ApplicationDTO.
|
||||||
|
*
|
||||||
|
* @param applicationId ID of the ApplicationDTO
|
||||||
|
* @param entAppReleaseWrapper ApplicatonRelease that need to be be created.
|
||||||
|
* @return the unique id of the application release, if the application release succeeded else -1
|
||||||
|
*/
|
||||||
|
ApplicationRelease createEntAppRelease(int applicationId, EntAppReleaseWrapper entAppReleaseWrapper,
|
||||||
|
ApplicationArtifact applicationArtifact) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
/***
|
||||||
|
*
|
||||||
|
* @param releaseUuid UUID of the application release.
|
||||||
|
* @param entAppReleaseWrapper {@link ApplicationReleaseDTO}
|
||||||
|
* @param applicationArtifact {@link ApplicationArtifact}
|
||||||
|
* @return If the application release is updated correctly True returns, otherwise retuen False
|
||||||
|
*/
|
||||||
|
ApplicationRelease updateEntAppRelease(String releaseUuid, EntAppReleaseWrapper entAppReleaseWrapper,
|
||||||
|
ApplicationArtifact applicationArtifact) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
ApplicationRelease updatePubAppRelease(String releaseUuid, PublicAppReleaseWrapper publicAppReleaseWrapper,
|
||||||
|
ApplicationArtifact applicationArtifact) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
ApplicationRelease updateWebAppRelease(String releaseUuid, WebAppReleaseWrapper webAppReleaseWrapper,
|
||||||
|
ApplicationArtifact applicationArtifact) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
ApplicationRelease updateCustomAppRelease(String releaseUuid, CustomAppReleaseWrapper customAppReleaseWrapper,
|
||||||
|
ApplicationArtifact applicationArtifact) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
/***
|
||||||
|
* To validate the application creating request
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
<T> void validateAppCreatingRequest(T param) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
/***
|
||||||
|
*
|
||||||
|
* @throws ApplicationManagementException throws if payload does not satisfy requirements.
|
||||||
|
*/
|
||||||
|
<T> void validateReleaseCreatingRequest(T param, String deviceType) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
/***
|
||||||
|
*
|
||||||
|
* @param iconFile Icon file for the application.
|
||||||
|
* @param bannerFile Banner file for the application.
|
||||||
|
* @param attachmentList Screenshot list.
|
||||||
|
* @throws RequestValidatingException If request doesn't contains required attachments.
|
||||||
|
*/
|
||||||
|
void validateImageArtifacts(Attachment iconFile, Attachment bannerFile, List<Attachment> attachmentList)
|
||||||
|
throws RequestValidatingException;
|
||||||
|
|
||||||
|
void validateBinaryArtifact(Attachment binaryFile) throws RequestValidatingException;
|
||||||
|
|
||||||
|
void addApplicationCategories(List<String> categories) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
List<Tag> getRegisteredTags() throws ApplicationManagementException;
|
||||||
|
|
||||||
|
List<Category> getRegisteredCategories() throws ApplicationManagementException;
|
||||||
|
|
||||||
|
void deleteApplicationTag(int appId, String tagName) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
void deleteTag(String tagName) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
void deleteUnusedTag(String tagName) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
void updateTag(String oldTagName, String newTagName) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
List<String> addTags(List<String> tags) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
List<String> addApplicationTags(int appId, List<String> tags) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
List<String> addCategories(List<String> categories) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
void deleteCategory(String categoryName) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
void updateCategory(String oldCategoryName, String newCategoryName) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
String getInstallableLifecycleState() throws ApplicationManagementException;
|
||||||
|
|
||||||
|
void updateSubsStatus (int deviceId, int operationId, String status) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get plist content to download and install the application.
|
||||||
|
*
|
||||||
|
* @param uuid Release UUID of the application.
|
||||||
|
* @return plist string
|
||||||
|
* @throws ApplicationManagementException Application management exception
|
||||||
|
*/
|
||||||
|
String getPlistArtifact(String uuid) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
List<ApplicationReleaseDTO> getReleaseByPackageNames(List<String> packageIds) throws ApplicationManagementException;
|
||||||
|
|
||||||
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user