diff --git a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/pom.xml b/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/pom.xml deleted file mode 100644 index 25c69e3576..0000000000 --- a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/pom.xml +++ /dev/null @@ -1,139 +0,0 @@ - - - - - - iot-base-plugin - org.wso2.carbon.devicemgt-plugins - 2.1.0-SNAPSHOT - ../pom.xml - - - 4.0.0 - org.wso2.carbon.device.mgt.iot.api - war - WSO2 Carbon - IoT Server API - Common APIs - WSO2 Carbon - IoT Server API for common device functionality - http://wso2.org - - - - - org.wso2.carbon.devicemgt - org.wso2.carbon.device.mgt.common - provided - - - org.wso2.carbon.devicemgt - org.wso2.carbon.device.mgt.core - provided - - - org.wso2.carbon.devicemgt - org.wso2.carbon.policy.mgt.core - provided - - - org.wso2.carbon.devicemgt - org.wso2.carbon.policy.mgt.common - provided - - - - - org.apache.cxf - cxf-rt-frontend-jaxws - provided - - - org.apache.cxf - cxf-rt-frontend-jaxrs - provided - - - org.apache.cxf - cxf-rt-transports-http - provided - - - - - org.wso2.carbon.devicemgt-plugins - org.wso2.carbon.device.mgt.iot - provided - - - - - org.codehaus.jackson - jackson-core-asl - - - org.codehaus.jackson - jackson-jaxrs - - - javax - javaee-web-api - provided - - - javax.ws.rs - jsr311-api - provided - - - - org.wso2.carbon.devicemgt - org.wso2.carbon.device.mgt.analytics.data.publisher - provided - - - - org.wso2.carbon.analytics - org.wso2.carbon.analytics.datasource.commons - provided - - - - - - - - maven-compiler-plugin - - UTF-8 - ${wso2.maven.compiler.source} - ${wso2.maven.compiler.target} - - - - maven-war-plugin - - common - - - - - - - - diff --git a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/java/log4j.properties b/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/java/log4j.properties deleted file mode 100755 index c271582fa8..0000000000 --- a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/java/log4j.properties +++ /dev/null @@ -1,8 +0,0 @@ -# Root logger option -log4j.rootLogger=INFO, stdout - -# Direct log messages to stdout -log4j.appender.stdout=org.apache.log4j.ConsoleAppender -log4j.appender.stdout.Target=System.out -log4j.appender.stdout.layout=org.apache.log4j.PatternLayout -log4j.appender.stdout.layout.ConversionPattern=%-5p %d{yyyy-MM-dd HH:mm:ss} %c{1}:%L - %m%n \ No newline at end of file diff --git a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/java/org/wso2/carbon/device/mgt/iot/api/DevicesManagerService.java b/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/java/org/wso2/carbon/device/mgt/iot/api/DevicesManagerService.java deleted file mode 100644 index ee5333b69b..0000000000 --- a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/java/org/wso2/carbon/device/mgt/iot/api/DevicesManagerService.java +++ /dev/null @@ -1,567 +0,0 @@ -/* - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.device.mgt.iot.api; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.device.mgt.common.*; -import org.wso2.carbon.device.mgt.common.configuration.mgt.TenantConfiguration; -import org.wso2.carbon.device.mgt.common.license.mgt.License; -import org.wso2.carbon.device.mgt.core.dto.DeviceType; -import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderService; -import org.wso2.carbon.device.mgt.iot.exception.DeviceControllerException; -import org.wso2.carbon.device.mgt.iot.sensormgt.SensorDataManager; -import org.wso2.carbon.device.mgt.iot.sensormgt.SensorRecord; -import org.wso2.carbon.device.mgt.iot.util.APIUtil; -import javax.ws.rs.*; -import javax.ws.rs.core.Response; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Date; -import java.util.List; - - -public class DevicesManagerService { - - private static final Log log = LogFactory.getLog(DevicesManagerService.class); - - private Device[] getActiveDevices(List devices) { - List activeDevices = new ArrayList<>(); - if (devices != null) { - for (Device device : devices) { - if (device.getEnrolmentInfo().getStatus().equals(EnrolmentInfo.Status.ACTIVE)) { - activeDevices.add(device); - } - } - } - return activeDevices.toArray(new Device[activeDevices.size()]); - } - - @Path("/devices/users/{userName}") - @GET - @Produces("application/json") - public Response getDevicesOfUser(@PathParam("userName") String userName) { - try { - List devices = APIUtil.getDeviceManagementService() - .getDevicesOfUser(userName); - Device[] devicesArr = this.getActiveDevices(devices); - return Response.status(Response.Status.OK).entity(devicesArr).build(); - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/users/{userName}/count") - @GET - @Produces("application/json") - public Response getDeviceCount(@PathParam("userName") String userName) { - try { - List devices = APIUtil.getDeviceManagementService() - .getDevicesOfUser(userName); - if (devices != null) { - List activeDevices = new ArrayList<>(); - for (Device device : devices) { - if (device.getEnrolmentInfo().getStatus().equals(EnrolmentInfo.Status.ACTIVE)) { - activeDevices.add(device); - } - } - return Response.status(Response.Status.OK).entity(activeDevices.size()).build(); - } - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/{deviceType}/{identifier}") - @GET - @Produces("application/json") - public Response getDevice(@PathParam("deviceType") String deviceType, - @PathParam("identifier") String identifier) { - - try { - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); - deviceIdentifier.setId(identifier); - deviceIdentifier.setType(deviceType); - Device device = APIUtil.getDeviceManagementService().getDevice( - deviceIdentifier); - if (device != null) { - return Response.status(Response.Status.OK).entity(device).build(); - } else { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/types") - @GET - @Produces("application/json") - public Response getDeviceTypes() { - try { - List deviceTypes = APIUtil.getDeviceManagementService() - .getAvailableDeviceTypes(); - DeviceType[] deviceTypesArr = deviceTypes.toArray(new DeviceType[deviceTypes.size()]); - return Response.status(Response.Status.OK).entity(deviceTypesArr).build(); - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/{deviceType}") - @GET - @Produces("application/json") - public Response getAllDevices(@PathParam("deviceType") String deviceType) { - try { - List devices = APIUtil.getDeviceManagementService() - .getAllDevices(deviceType); - Device[] devicesArr = this.getActiveDevices(devices); - return Response.status(Response.Status.OK).entity(devicesArr).build(); - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices") - @GET - @Produces("application/json") - public Response getAllDevices() { - try { - List devices = APIUtil.getDeviceManagementService() - .getAllDevices(); - return Response.status(Response.Status.OK).entity(this.getActiveDevices(devices)).build(); - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/{deviceType}/config") - @GET - @Produces("application/json") - public Response getConfiguration(@PathParam("deviceType") String deviceType) { - try { - TenantConfiguration tenantConfiguration = APIUtil.getDeviceManagementService().getConfiguration(deviceType); - if (tenantConfiguration != null) { - return Response.status(Response.Status.OK).entity(tenantConfiguration).build(); - } else { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/search/role") - @GET - @Produces("application/json") - public Response getAllDevicesOfRole(@QueryParam("roleName") String roleName) { - try { - List devices = APIUtil.getDeviceManagementService() - .getAllDevicesOfRole(roleName); - Device[] devicesArr = this.getActiveDevices(devices); - return Response.status(Response.Status.OK).entity(devicesArr).build(); - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/search/name") - @GET - @Produces("application/json") - public Response getDevicesByName(@PathParam("deviceName") String deviceName) { - try { - List devices = APIUtil.getDeviceManagementService() - .getDevicesByName(deviceName); - Device[] devicesArr = this.getActiveDevices(devices); - return Response.status(Response.Status.OK).entity(devicesArr).build(); - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/{deviceType}/{identifier}/status") - @PUT - @Consumes("application/json") - @Produces("application/json") - public Response updateDeviceEnrolmentInfo(@PathParam("deviceType") String deviceType, - @PathParam("identifier") String identifier, - @FormParam("status") EnrolmentInfo.Status status) { - try { - DeviceManagementProviderService providerService = APIUtil.getDeviceManagementService(); - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); - deviceIdentifier.setType(deviceType); - deviceIdentifier.setId(identifier); - Device device = providerService.getDevice(deviceIdentifier); - providerService.updateDeviceEnrolmentInfo(device, status); - return Response.status(Response.Status.NO_CONTENT).build(); - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/search/status") - @GET - @Produces("application/json") - public Response getDevicesByStatus(@QueryParam("status") EnrolmentInfo.Status status) { - try { - List devices = APIUtil.getDeviceManagementService() - .getDevicesByStatus(status); - Device[] devicesArr = this.getActiveDevices(devices); - return Response.status(Response.Status.OK).entity(devicesArr).build(); - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/{deviceType}/license") - @GET - @Produces("application/json") - public Response getLicense(@PathParam("deviceType") String deviceType, - @QueryParam("languageCode") String languageCode) { - try { - License license = APIUtil.getDeviceManagementService().getLicense( - deviceType, languageCode); - if (license != null) { - return Response.status(Response.Status.OK).entity(license).build(); - } else { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/{deviceType}/license") - @POST - @Produces("application/json") - public Response addLicense(@PathParam("deviceType") String deviceType, - @FormParam("provider") String provider, @FormParam("name") String name, - @FormParam("version") String version, @FormParam("language") String language, - @FormParam("validFrom") Date validFrom, @FormParam("validTo") Date validTo, - @FormParam("text") String text) { - try { - License license = new License(); - license.setProvider(provider); - license.setName(name); - license.setVersion(version); - license.setLanguage(language); - license.setValidFrom(validFrom); - license.setValidTo(validTo); - license.setText(text); - APIUtil.getDeviceManagementService().addLicense(deviceType, license); - return Response.status(Response.Status.NO_CONTENT).build(); - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/{deviceType}/{identifier}/enrollment") - @PUT - @Produces("application/json") - public Response modifyEnrollment(@PathParam("deviceType") String deviceType, - @PathParam("identifier") String identifier, - @FormParam("name") String name, - @FormParam("description") String description, - @FormParam("groupId") int groupId, - @FormParam("enrollmentId") int enrollmentId, - @FormParam("dateOfEnrolment") long dateOfEnrolment, - @FormParam("dateOfLastUpdate") long dateOfLastUpdate, - @FormParam("ownership") EnrolmentInfo.OwnerShip ownership, - @FormParam("status") EnrolmentInfo.Status status, - @FormParam("owner") String owner) { - - EnrolmentInfo enrolmentInfo = new EnrolmentInfo(); - enrolmentInfo.setId(enrollmentId); - enrolmentInfo.setDateOfEnrolment(dateOfEnrolment); - enrolmentInfo.setDateOfLastUpdate(dateOfLastUpdate); - enrolmentInfo.setOwnership(ownership); - enrolmentInfo.setStatus(status); - enrolmentInfo.setOwner(owner); - - Device device = new Device(); - device.setType(deviceType); - device.setDeviceIdentifier(identifier); - device.setName(name); - device.setDescription(description); - device.setEnrolmentInfo(enrolmentInfo); - try { - boolean isModified = APIUtil.getDeviceManagementService() - .modifyEnrollment(device); - if (isModified) { - return Response.status(Response.Status.NO_CONTENT).build(); - } else { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/{deviceType}/{identifier}/enrollment") - @POST - @Produces("application/json") - public Response enrollDevice(@PathParam("deviceType") String deviceType, @PathParam("identifier") String identifier, - @FormParam("name") String name, @FormParam("description") String description, - @FormParam("groupId") int groupId, - @FormParam("enrollmentId") int enrollmentId, - @FormParam("dateOfEnrolment") long dateOfEnrolment, - @FormParam("dateOfLastUpdate") long dateOfLastUpdate, - @FormParam("ownership") EnrolmentInfo.OwnerShip ownership, - @FormParam("status") EnrolmentInfo.Status status, - @FormParam("owner") String owner) { - - EnrolmentInfo enrolmentInfo = new EnrolmentInfo(); - enrolmentInfo.setId(enrollmentId); - enrolmentInfo.setDateOfEnrolment(dateOfEnrolment); - enrolmentInfo.setDateOfLastUpdate(dateOfLastUpdate); - enrolmentInfo.setOwnership(ownership); - enrolmentInfo.setStatus(status); - enrolmentInfo.setOwner(owner); - - Device device = new Device(); - device.setType(deviceType); - device.setDeviceIdentifier(identifier); - device.setName(name); - device.setDescription(description); - device.setEnrolmentInfo(enrolmentInfo); - try { - boolean isModified = APIUtil.getDeviceManagementService().enrollDevice( - device); - if (isModified) { - return Response.status(Response.Status.NO_CONTENT).build(); - } else { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/tenant/configuration") - @GET - @Produces("application/json") - public Response getTenantConfiguration() { - try { - TenantConfiguration tenantConfiguration = APIUtil.getDeviceManagementService().getConfiguration(); - if (tenantConfiguration != null) { - return Response.status(Response.Status.OK).entity(tenantConfiguration).build(); - } else { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/tenant/configuration") - @POST - @Produces("application/json") - public Response saveTenantConfiguration(@FormParam("tenantConfiguration") TenantConfiguration tenantConfiguration) { - try { - boolean isSaved = APIUtil.getDeviceManagementService() - .saveConfiguration(tenantConfiguration); - if (isSaved) { - return Response.status(Response.Status.NO_CONTENT).build(); - } else { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/{deviceType}/{identifier}") - @DELETE - @Produces("application/json") - public Response disenrollDevice(@PathParam("deviceType") String deviceType, - @PathParam("identifier") String identifier) { - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); - deviceIdentifier.setType(deviceType); - deviceIdentifier.setId(identifier); - try { - boolean isDisEnrolled = APIUtil.getDeviceManagementService() - .disenrollDevice(deviceIdentifier); - if (isDisEnrolled) { - return Response.status(Response.Status.NO_CONTENT).build(); - } else { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/{deviceType}/{identifier}/enrollment") - @GET - @Produces("application/json") - public Response isEnrolled(@PathParam("deviceType") String deviceType, - @PathParam("identifier") String identifier) { - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); - deviceIdentifier.setType(deviceType); - deviceIdentifier.setId(identifier); - try { - boolean isEnrolled = APIUtil.getDeviceManagementService().isEnrolled( - deviceIdentifier); - if (isEnrolled) { - return Response.status(Response.Status.NO_CONTENT).build(); - } else { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/{deviceType}/{identifier}/status") - @GET - @Produces("application/json") - public Response isActive(@PathParam("deviceType") String deviceType, - @PathParam("identifier") String identifier) { - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); - deviceIdentifier.setType(deviceType); - deviceIdentifier.setId(identifier); - try { - boolean isActive = APIUtil.getDeviceManagementService().isActive( - deviceIdentifier); - if (isActive) { - return Response.status(Response.Status.NO_CONTENT).build(); - } else { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/{deviceType}/{identifier}/status") - @PUT - @Consumes("application/json") - @Produces("application/json") - public Response changeDeviceStatus(@PathParam("deviceType") String deviceType, - @PathParam("identifier") String identifier, - @FormParam("status") boolean status) { - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); - deviceIdentifier.setType(deviceType); - deviceIdentifier.setId(identifier); - try { - boolean isActivated = APIUtil.getDeviceManagementService().setActive( - deviceIdentifier, status); - if (isActivated) { - return Response.status(Response.Status.NO_CONTENT).build(); - } else { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/{deviceType}/{identifier}/ownership") - @PUT - @Consumes("application/json") - @Produces("application/json") - public Response setOwnership(@PathParam("deviceType") String deviceType, - @PathParam("identifier") String identifier, - @FormParam("ownership") String ownership) { - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); - deviceIdentifier.setType(deviceType); - deviceIdentifier.setId(identifier); - try { - boolean isOwnershipChanged = APIUtil.getDeviceManagementService() - .setOwnership(deviceIdentifier, ownership); - if (isOwnershipChanged) { - return Response.status(Response.Status.NO_CONTENT).build(); - } else { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/{deviceType}/{identifier}/enrollment/status") - @PUT - @Consumes("application/json") - @Produces("application/json") - public Response setStatus(@PathParam("deviceType") String deviceType, - @PathParam("identifier") String identifier, @FormParam("owner") String owner, - @FormParam("status") EnrolmentInfo.Status status) { - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); - deviceIdentifier.setType(deviceType); - deviceIdentifier.setId(identifier); - try { - boolean isStatusChanged = APIUtil.getDeviceManagementService() - .setStatus(deviceIdentifier, owner, status); - if (isStatusChanged) { - return Response.status(Response.Status.NO_CONTENT).build(); - } else { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } catch (DeviceManagementException e) { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/{deviceType}/{identifier}/sensors/{sensorName}") - @POST - @Consumes("application/json") - @Produces("application/json") - public Response setSensorValue(@PathParam("deviceType") String deviceType, - @PathParam("identifier") String deviceId, - @PathParam("sensorName") String sensorName, - @FormParam("sensorValue") String sensorValue) { - boolean isValueSet = SensorDataManager.getInstance().setSensorRecord(deviceId, sensorName, - sensorValue, Calendar.getInstance().getTimeInMillis()); - if (isValueSet) { - return Response.status(Response.Status.NO_CONTENT).build(); - } else { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @Path("/devices/{deviceType}/{identifier}/sensors/{sensorName}") - @GET - @Consumes("application/json") - @Produces("application/json") - public Response getSensorValue(@PathParam("deviceType") String deviceType, - @PathParam("identifier") String deviceId, - @PathParam("sensorName") String sensorName, - @QueryParam("defaultValue") String defaultValue) { - - try { - SensorRecord sensorRecord = SensorDataManager.getInstance().getSensorRecord(deviceId, sensorName); - if (sensorRecord != null) { - return Response.status(Response.Status.OK).entity(sensorRecord).build(); - } else { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } catch (DeviceControllerException e) { - log.error("Error on reading sensor value: " + e.getMessage()); - if (defaultValue != null) { - SensorRecord sensorRecord = new SensorRecord(defaultValue, - Calendar.getInstance().getTimeInMillis()); - return Response.status(Response.Status.OK).entity(sensorRecord).build(); - } else { - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - } - -} \ No newline at end of file diff --git a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/java/org/wso2/carbon/device/mgt/iot/api/PolicyManagementService.java b/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/java/org/wso2/carbon/device/mgt/iot/api/PolicyManagementService.java deleted file mode 100644 index d9a9284575..0000000000 --- a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/java/org/wso2/carbon/device/mgt/iot/api/PolicyManagementService.java +++ /dev/null @@ -1,356 +0,0 @@ -/* - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.device.mgt.iot.api; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.context.CarbonContext; -import org.wso2.carbon.context.PrivilegedCarbonContext; -import org.wso2.carbon.device.mgt.common.DeviceIdentifier; -import org.wso2.carbon.device.mgt.common.DeviceManagementException; -import org.wso2.carbon.device.mgt.iot.util.APIUtil; -import org.wso2.carbon.policy.mgt.common.Policy; -import org.wso2.carbon.policy.mgt.common.PolicyAdministratorPoint; -import org.wso2.carbon.policy.mgt.common.PolicyManagementException; -import org.wso2.carbon.policy.mgt.common.PolicyMonitoringTaskException; -import org.wso2.carbon.policy.mgt.common.monitor.ComplianceData; -import org.wso2.carbon.policy.mgt.common.monitor.PolicyComplianceException; -import org.wso2.carbon.policy.mgt.core.PolicyManagerService; -import org.wso2.carbon.policy.mgt.core.task.TaskScheduleService; - -import javax.jws.WebService; -import javax.servlet.http.HttpServletResponse; -import javax.ws.rs.*; -import javax.ws.rs.core.Context; -import javax.ws.rs.core.Response; -import java.util.List; - -public class PolicyManagementService { - - private static final Log log = LogFactory.getLog(PolicyManagementService.class); - - @POST - @Path("/policies/inactive") - @Produces("application/json") - public Response addInactivePolicy(@FormParam("policy") Policy policy) { - return addPolicy(policy); - } - - @POST - @Path("/policies/active") - @Produces("application/json") - public Response addActivePolicy(@FormParam("policy") Policy policy) { - policy.setActive(true); - return addPolicy(policy); - } - - private Response addPolicy(Policy policy) { - try { - PolicyManagerService policyManagerService = APIUtil.getPolicyManagerService(); - PolicyAdministratorPoint pap = policyManagerService.getPAP(); - pap.addPolicy(policy); - if (log.isDebugEnabled()) { - log.debug("Policy has been added successfully."); - } - return Response.status(Response.Status.NO_CONTENT).build(); - } catch (PolicyManagementException e) { - String error = "Policy Management related exception."; - log.error(error, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @GET - @Path("/policies") - @Produces("application/json") - public Response getAllPolicies() { - - try { - PolicyManagerService policyManagerService = APIUtil.getPolicyManagerService(); - PolicyAdministratorPoint policyAdministratorPoint = policyManagerService.getPAP(); - List policies = policyAdministratorPoint.getPolicies(); - Policy[] policyArr = policyAdministratorPoint.getPolicies().toArray(new Policy[policies.size()]); - return Response.status(Response.Status.OK).entity(policyArr).build(); - } catch (PolicyManagementException e) { - String error = "Policy Management related exception"; - log.error(error, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @GET - @Path("/policies/{policyId}") - @Produces("application/json") - public Response getPolicy(@PathParam("policyId") int policyId) { - - try { - PolicyManagerService policyManagerService = APIUtil.getPolicyManagerService(); - PolicyAdministratorPoint policyAdministratorPoint = policyManagerService.getPAP(); - Policy policy = policyAdministratorPoint.getPolicy(policyId); - if (policy != null) { - if (log.isDebugEnabled()) { - log.debug("Sending policy for ID " + policyId); - } - return Response.status(Response.Status.OK).entity(policy).build(); - } else { - log.error("Policy for ID " + policyId + " not found."); - return Response.status(Response.Status.NOT_FOUND).build(); - } - } catch (PolicyManagementException e) { - String error = "Policy Management related exception"; - log.error(error, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @GET - @Path("/policies/inactive/count") - @Produces("application/json") - public Response getPolicyCount() { - - try { - PolicyManagerService policyManagerService = APIUtil.getPolicyManagerService(); - PolicyAdministratorPoint policyAdministratorPoint = policyManagerService.getPAP(); - int policyCount = policyAdministratorPoint.getPolicyCount(); - return Response.status(Response.Status.OK).entity(policyCount).build(); - } catch (PolicyManagementException e) { - String error = "Policy Management related exception"; - log.error(error, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @PUT - @Path("/policies/{policyId}") - @Produces("application/json") - public Response updatePolicy(@FormParam("policy") Policy policy, @PathParam("policyId") int policyId) { - - try { - PolicyManagerService policyManagerService = APIUtil.getPolicyManagerService(); - PolicyAdministratorPoint pap = policyManagerService.getPAP(); - Policy previousPolicy = pap.getPolicy(policyId); - policy.setProfile(pap.getProfile(previousPolicy.getProfileId())); - policy.setPolicyName(previousPolicy.getPolicyName()); - pap.updatePolicy(policy); - if (log.isDebugEnabled()) { - log.debug("Policy with ID " + policyId + " has been updated successfully."); - } - return Response.status(Response.Status.NO_CONTENT).build(); - } catch (PolicyManagementException e) { - String error = "Policy Management related exception"; - log.error(error, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @PUT - @Path("/policies/priorities") - @Consumes("application/json") - @Produces("application/json") - public Response updatePolicyPriorities(@FormParam("policies") List priorityUpdatedPolicies) { - - try { - PolicyManagerService policyManagerService = APIUtil.getPolicyManagerService(); - PolicyAdministratorPoint pap = policyManagerService.getPAP(); - boolean policiesUpdated = pap.updatePolicyPriorities(priorityUpdatedPolicies); - if (policiesUpdated) { - if (log.isDebugEnabled()) { - log.debug("Policy Priorities successfully updated."); - } - return Response.status(Response.Status.NO_CONTENT).build(); - } else { - if (log.isDebugEnabled()) { - log.debug("Policy priorities did not update. Bad Request."); - } - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } catch (PolicyManagementException e) { - String error = "Exception in updating policy priorities."; - log.error(error, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @DELETE - @Path("/policies/{policyId}") - @Produces("application/json") - public Response deletePolicy(@PathParam("policyId") int policyId) { - - try { - PolicyManagerService policyManagerService = APIUtil.getPolicyManagerService(); - PolicyAdministratorPoint pap = policyManagerService.getPAP(); - Policy policy = pap.getPolicy(policyId); - boolean policyDeleted = pap.deletePolicy(policy); - if (policyDeleted) { - if (log.isDebugEnabled()) { - log.debug("Policy by id:" + policyId + " has been successfully deleted."); - } - return Response.status(Response.Status.OK).build(); - } else { - if (log.isDebugEnabled()) { - log.debug("Policy by id:" + policyId + " does not exist."); - } - return Response.status(Response.Status.NOT_FOUND).build(); - } - } catch (PolicyManagementException e) { - String error = "Exception in deleting policy by id:" + policyId; - log.error(error, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @PUT - @Path("/policies/{policyId}/activate") - @Produces("application/json") - public Response activatePolicy(@PathParam("policyId") int policyId) { - - try { - PolicyManagerService policyManagerService = APIUtil.getPolicyManagerService(); - PolicyAdministratorPoint pap = policyManagerService.getPAP(); - pap.activatePolicy(policyId); - if (log.isDebugEnabled()) { - log.debug("Policy by id:" + policyId + " has been successfully activated."); - } - return Response.status(Response.Status.NO_CONTENT).build(); - } catch (PolicyManagementException e) { - String error = "Exception in activating policy by id:" + policyId; - log.error(error, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @PUT - @Path("/policies/{policyId}/inactivate") - @Produces("application/json") - public Response inactivatePolicy(@PathParam("policyId") int policyId) { - - try { - PolicyManagerService policyManagerService = APIUtil.getPolicyManagerService(); - PolicyAdministratorPoint pap = policyManagerService.getPAP(); - pap.inactivatePolicy(policyId); - if (log.isDebugEnabled()) { - log.debug("Policy by id:" + policyId + " has been successfully inactivated."); - } - return Response.status(Response.Status.NO_CONTENT).build(); - } catch (PolicyManagementException e) { - String error = "Exception in inactivating policy by id:" + policyId; - log.error(error, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @PUT - @Path("/policies/publish-changes") - @Produces("application/json") - public Response publishChanges() { - - try { - PolicyManagerService policyManagerService = APIUtil.getPolicyManagerService(); - PolicyAdministratorPoint pap = policyManagerService.getPAP(); - pap.publishChanges(); - if (log.isDebugEnabled()) { - log.debug("Changes have been successfully updated."); - } - return Response.status(Response.Status.NO_CONTENT).build(); - } catch (PolicyManagementException e) { - String error = "Exception in applying changes."; - log.error(error, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @PUT - @Path("/policies/monitor-task/start") - @Produces("application/json") - public Response startTaskService(@FormParam("milliseconds") int monitoringFrequency) { - - try { - PolicyManagerService policyManagerService = APIUtil.getPolicyManagerService(); - TaskScheduleService taskScheduleService = policyManagerService.getTaskScheduleService(); - taskScheduleService.startTask(monitoringFrequency); - if (log.isDebugEnabled()) { - log.debug("Policy monitoring service started successfully."); - } - return Response.status(Response.Status.NO_CONTENT).build(); - } catch (PolicyMonitoringTaskException e) { - String error = "Policy Management related exception."; - log.error(error, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @PUT - @Path("/policies/monitor-task/update") - @Produces("application/json") - public Response updateTaskService(@FormParam("milliseconds") int monitoringFrequency) { - - try { - PolicyManagerService policyManagerService = APIUtil.getPolicyManagerService();; - TaskScheduleService taskScheduleService = policyManagerService.getTaskScheduleService(); - taskScheduleService.updateTask(monitoringFrequency); - if (log.isDebugEnabled()) { - log.debug("Policy monitoring service updated successfully."); - } - return Response.status(Response.Status.NO_CONTENT).build(); - } catch (PolicyMonitoringTaskException e) { - String error = "Policy Management related exception."; - log.error(error, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @PUT - @Path("/policies/monitor-task/stop") - @Produces("application/json") - public Response stopTaskService() { - try { - PolicyManagerService policyManagerService = APIUtil.getPolicyManagerService(); - TaskScheduleService taskScheduleService = policyManagerService.getTaskScheduleService(); - taskScheduleService.stopTask(); - if (log.isDebugEnabled()) { - log.debug("Policy monitoring service stopped successfully."); - } - return Response.status(Response.Status.NO_CONTENT).build(); - } catch (PolicyMonitoringTaskException e) { - String error = "Policy Management related exception."; - log.error(error, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - - @GET - @Path("/policies/compliance/{deviceType}/{deviceId}") - @Produces("application/json") - public Response getComplianceDataOfDevice(@PathParam("deviceId") String deviceId, - @PathParam("deviceType") String deviceType) { - try { - PolicyManagerService policyManagerService = APIUtil.getPolicyManagerService(); - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); - deviceIdentifier.setType(deviceType); - deviceIdentifier.setId(deviceId); - ComplianceData complianceData = policyManagerService.getDeviceCompliance(deviceIdentifier); - return Response.status(Response.Status.OK).entity(complianceData).build(); - } catch (PolicyComplianceException e) { - String error = "Error occurred while getting the compliance data."; - log.error(error, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).build(); - } - } - -} \ No newline at end of file diff --git a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/java/org/wso2/carbon/device/mgt/iot/util/APIUtil.java b/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/java/org/wso2/carbon/device/mgt/iot/util/APIUtil.java deleted file mode 100644 index e18324d12e..0000000000 --- a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/java/org/wso2/carbon/device/mgt/iot/util/APIUtil.java +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.device.mgt.iot.util; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.context.PrivilegedCarbonContext; -import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderService; -import org.wso2.carbon.device.mgt.core.service.GroupManagementProviderService; -import org.wso2.carbon.policy.mgt.core.PolicyManagerService; - -/** - * This class provides utility functions used by REST-API. - */ -public class APIUtil { - private static Log log = LogFactory.getLog(APIUtil.class); - - public static GroupManagementProviderService getGroupManagementProviderService() { - PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext(); - GroupManagementProviderService groupManagementProviderService = - (GroupManagementProviderService) ctx.getOSGiService(GroupManagementProviderService.class, null); - if (groupManagementProviderService == null) { - String msg = "Group Management service has not initialized."; - log.error(msg); - throw new IllegalStateException(msg); - } - return groupManagementProviderService; - } - - public static DeviceManagementProviderService getDeviceManagementService() { - PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext(); - DeviceManagementProviderService deviceManagementProviderService = - (DeviceManagementProviderService) ctx.getOSGiService(DeviceManagementProviderService.class, null); - if (deviceManagementProviderService == null) { - String msg = "Device Management service has not initialized."; - log.error(msg); - throw new IllegalStateException(msg); - } - return deviceManagementProviderService; - } - - public static PolicyManagerService getPolicyManagerService() { - PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext(); - PolicyManagerService policyManagerService = - (PolicyManagerService) ctx.getOSGiService(PolicyManagerService.class, null); - if (policyManagerService == null) { - String msg = "Policy management service has not initialized."; - log.error(msg); - throw new IllegalStateException(msg); - } - return policyManagerService; - } -} diff --git a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/java/org/wso2/carbon/device/mgt/iot/util/ResponsePayload.java b/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/java/org/wso2/carbon/device/mgt/iot/util/ResponsePayload.java deleted file mode 100644 index c37d1d3a0e..0000000000 --- a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/java/org/wso2/carbon/device/mgt/iot/util/ResponsePayload.java +++ /dev/null @@ -1,108 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.device.mgt.iot.util; - -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; - -@XmlRootElement -public class ResponsePayload { - - private int statusCode; - private String messageFromServer; - private Object responseContent; - - public static ResponsePayloadBuilder statusCode(int statusCode) { - ResponsePayload message = new ResponsePayload(); - return message.getBuilder().statusCode(statusCode); - } - - public static ResponsePayloadBuilder messageFromServer( - String messageFromServer) { - ResponsePayload message = new ResponsePayload(); - return message.getBuilder().messageFromServer(messageFromServer); - } - - public static ResponsePayloadBuilder responseContent(String responseContent) { - ResponsePayload message = new ResponsePayload(); - return message.getBuilder().responseContent(responseContent); - } - - @XmlElement - public int getStatusCode() { - return statusCode; - } - - public void setStatusCode(int statusCode) { - this.statusCode = statusCode; - } - - @XmlElement - public String getMessageFromServer() { - return messageFromServer; - } - - public void setMessageFromServer(String messageFromServer) { - this.messageFromServer = messageFromServer; - } - - @XmlElement - public Object getResponseContent() { - return responseContent; - } - - public void setResponseContent(Object responseContent) { - this.responseContent = responseContent; - } - - private ResponsePayloadBuilder getBuilder() { - return new ResponsePayloadBuilder(); - } - - public class ResponsePayloadBuilder { - - private int statusCode; - private String messageFromServer; - private Object responseContent; - - public ResponsePayloadBuilder statusCode(int statusCode) { - this.statusCode = statusCode; - return this; - } - - public ResponsePayloadBuilder messageFromServer(String messageFromServer) { - this.messageFromServer = messageFromServer; - return this; - } - - public ResponsePayloadBuilder responseContent(String responseContent) { - this.responseContent = responseContent; - return this; - } - - public ResponsePayload build() { - ResponsePayload payload = new ResponsePayload(); - payload.setStatusCode(statusCode); - payload.setMessageFromServer(messageFromServer); - payload.setResponseContent(responseContent); - return payload; - } - } - -} diff --git a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/webapp/META-INF/permissions.xml b/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/webapp/META-INF/permissions.xml deleted file mode 100644 index aa291109e3..0000000000 --- a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/webapp/META-INF/permissions.xml +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - - - - Get Device of user - /login - /device_manager/device/user/{username}/all - GET - - - - - Get ungrouped devices of user - /login - /device_manager/device/user/{username}/ungrouped - GET - - - - - Get Device of user - /login - /device_manager/device_manager/device/user/{username}/ungrouped - GET - - - - - Get count of all the devices - /login - /device_manager/device/user/{username}/all/count - GET - - - - - Get specific device - /login - /device_manager/device/type/{type}/identifier/{identifier} - GET - - - - - Get the device type - /login - /device_manager/device/type/all - GET - - - - - Get all devices - /login - /device_manager/device/all - GET - - - - - Get the device by name - /login - /device_manager/device/name/{name}/all - GET - - - - - Update device enrollment info - /login - /device_manager/device/type/{type}/identifier/{identifier}/status - GET - - - - - Update device enrollment info - /login - /device_manager/device/type/{type}/identifier/{identifier}/status - GET - - - - \ No newline at end of file diff --git a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/webapp/META-INF/webapp-classloading.xml b/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/webapp/META-INF/webapp-classloading.xml deleted file mode 100644 index fa44619195..0000000000 --- a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/webapp/META-INF/webapp-classloading.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - false - - - CXF,Carbon - diff --git a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/webapp/WEB-INF/cxf-servlet.xml b/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/webapp/WEB-INF/cxf-servlet.xml deleted file mode 100644 index 0f2d406415..0000000000 --- a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/webapp/WEB-INF/cxf-servlet.xml +++ /dev/null @@ -1,49 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/webapp/WEB-INF/web.xml b/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/webapp/WEB-INF/web.xml deleted file mode 100755 index 4335265197..0000000000 --- a/components/iot-plugins/iot-base-plugin/org.wso2.carbon.device.mgt.iot.api/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - WSO2 IoT Server - WSO2 IoT Server - - - CXFServlet - org.apache.cxf.transport.servlet.CXFServlet - 1 - - - CXFServlet - /* - - - isAdminService - false - - - doAuthentication - true - - diff --git a/components/iot-plugins/iot-base-plugin/pom.xml b/components/iot-plugins/iot-base-plugin/pom.xml index 759eb40776..6c491e480d 100644 --- a/components/iot-plugins/iot-base-plugin/pom.xml +++ b/components/iot-plugins/iot-base-plugin/pom.xml @@ -1,21 +1,21 @@ + ~ Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + ~ + ~ WSO2 Inc. licenses this file to you under the Apache License, + ~ Version 2.0 (the "License"); you may not use this file except + ~ in compliance with the License. + ~ You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, + ~ software distributed under the License is distributed on an + ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + ~ KIND, either express or implied. See the License for the + ~ specific language governing permissions and limitations + ~ under the License. + --> @@ -34,7 +34,6 @@ org.wso2.carbon.device.mgt.iot - org.wso2.carbon.device.mgt.iot.api org.wso2.carbon.device.mgt.iot.ui diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/pom.xml b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/pom.xml deleted file mode 100644 index ec1bca7772..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/pom.xml +++ /dev/null @@ -1,212 +0,0 @@ - - - - - - - mobile-base-plugin - org.wso2.carbon.devicemgt-plugins - 2.1.0-SNAPSHOT - ../pom.xml - - - 4.0.0 - org.wso2.carbon.device.mgt.mobile.api - war - WSO2 Carbon - Mobile Device Management API - WSO2 Carbon - Mobile Device Management API - http://wso2.org - - - - - maven-compiler-plugin - - 1.7 - 1.7 - - 2.3.2 - - - maven-war-plugin - 2.2 - - WEB-INF/lib/*cxf*.jar - ${project.artifactId} - - - - - - - - deploy - - compile - - - org.apache.maven.plugins - maven-antrun-plugin - 1.7 - - - compile - - run - - - - - - - - - - - - - - - - - - - client - - test - - - org.codehaus.mojo - exec-maven-plugin - 1.2.1 - - - test - - java - - - - - - - - - - - - org.apache.cxf - cxf-rt-frontend-jaxws - - - org.apache.cxf - cxf-rt-frontend-jaxrs - - - org.apache.cxf - cxf-rt-transports-http - - - junit - junit - test - - - commons-httpclient.wso2 - commons-httpclient - provided - - - javax.ws.rs - jsr311-api - provided - - - org.wso2.carbon - org.wso2.carbon.utils - provided - - - org.wso2.carbon.commons - org.wso2.carbon.user.mgt - provided - - - org.wso2.carbon - org.wso2.carbon.logging - provided - - - org.wso2.carbon.devicemgt - org.wso2.carbon.device.mgt.common - provided - - - org.wso2.carbon.devicemgt - org.wso2.carbon.device.mgt.core - provided - - - org.apache.axis2.wso2 - axis2-client - - - - - org.wso2.carbon.devicemgt - org.wso2.carbon.policy.mgt.core - provided - - - org.apache.axis2.wso2 - axis2-client - - - - - org.wso2.carbon.identity - org.wso2.carbon.identity.oauth.stub - provided - - - org.apache.axis2.wso2 - axis2-client - - - - - com.google.code.gson - gson - - - commons-codec.wso2 - commons-codec - provided - - - org.wso2.carbon.devicemgt - org.wso2.carbon.certificate.mgt.core - provided - - - - diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Authentication.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Authentication.java deleted file mode 100644 index 42257b7944..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Authentication.java +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.api; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -import javax.ws.rs.Consumes; -import javax.ws.rs.Produces; - -/** - * Authentication related REST-API implementation. - */ -@Produces({ "application/json", "application/xml" }) -@Consumes({ "application/json", "application/xml" }) -public class Authentication { - - private static Log log = LogFactory.getLog(Authentication.class); -} - diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Certificate.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Certificate.java deleted file mode 100644 index e1714c2c29..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Certificate.java +++ /dev/null @@ -1,194 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.api; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.certificate.mgt.core.dao.CertificateManagementDAOException; -import org.wso2.carbon.certificate.mgt.core.dto.CertificateResponse; -import org.wso2.carbon.certificate.mgt.core.exception.KeystoreException; -import org.wso2.carbon.certificate.mgt.core.service.CertificateManagementService; -import org.wso2.carbon.context.PrivilegedCarbonContext; -import org.wso2.carbon.device.mgt.common.PaginationRequest; -import org.wso2.carbon.device.mgt.common.PaginationResult; -import org.wso2.carbon.mdm.api.common.MDMAPIException; -import org.wso2.carbon.mdm.api.util.DeviceMgtAPIUtils; -import org.wso2.carbon.mdm.beans.EnrollmentCertificate; -import org.wso2.carbon.mdm.exception.Message; - -import javax.ws.rs.Consumes; -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.HeaderParam; -import javax.ws.rs.POST; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; -import java.util.ArrayList; -import java.util.List; - -/** - * All the certificate related tasks such as saving certificates, can be done through this endpoint. - */ -@SuppressWarnings("NonJaxWsWebServices") -@Produces({"application/json", "application/xml"}) -@Consumes({ "application/json", "application/xml" }) -public class Certificate { - - private static Log log = LogFactory.getLog(Operation.class); - - /** - * Save a list of certificates and relevant information in the database. - * - * @param enrollmentCertificates List of all the certificates which includes the tenant id, certificate as - * a pem and a serial number. - * @return Status of the data persist operation. - */ - @POST - @Path("saveCertificate") - public Response saveCertificate(@HeaderParam("Accept") String acceptHeader, - EnrollmentCertificate[] enrollmentCertificates) { - MediaType responseMediaType = DeviceMgtAPIUtils.getResponseMediaType(acceptHeader); - CertificateManagementService certificateService; - List certificates = new ArrayList<>(); - org.wso2.carbon.certificate.mgt.core.bean.Certificate certificate; - certificateService = DeviceMgtAPIUtils.getCertificateManagementService(); - try { - for (EnrollmentCertificate enrollmentCertificate : enrollmentCertificates) { - certificate = new org.wso2.carbon.certificate.mgt.core.bean.Certificate(); - certificate.setTenantId(PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId()); - certificate.setSerial(enrollmentCertificate.getSerial()); - certificate.setCertificate(certificateService.pemToX509Certificate(enrollmentCertificate.getPem())); - certificates.add(certificate); - } - certificateService.saveCertificate(certificates); - return Response.status(Response.Status.CREATED).entity("Added successfully."). - type(responseMediaType).build(); - } catch (KeystoreException e) { - String msg = "Error occurred while converting PEM file to X509Certificate."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).type(responseMediaType).build(); - } - } - - /** - * Get a certificate when the serial number is given. - * - * @param serialNumber serial of the certificate needed. - * @return certificate response. - */ - @GET - @Path("{serialNumber}") - public Response getCertificate(@HeaderParam("Accept") String acceptHeader, - @PathParam("serialNumber") String serialNumber) { - MediaType responseMediaType = DeviceMgtAPIUtils.getResponseMediaType(acceptHeader); - Message message = new Message(); - - if (serialNumber == null || serialNumber.isEmpty()) { - message.setErrorMessage("Invalid serial number"); - message.setDiscription("Serial number is missing or invalid."); - return Response.status(Response.Status.BAD_REQUEST).entity(message).type(responseMediaType).build(); - } - - CertificateManagementService certificateService = DeviceMgtAPIUtils.getCertificateManagementService(); - CertificateResponse certificateResponse; - try { - certificateResponse = certificateService.getCertificateBySerial(serialNumber); - if(certificateResponse != null) { - certificateResponse.setCertificate(null); //avoid sending byte array in response. - } - return Response.status(Response.Status.OK).entity(certificateResponse).type(responseMediaType).build(); - } catch (KeystoreException e) { - String msg = "Error occurred while converting PEM file to X509Certificate"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).type(responseMediaType).build(); - } - } - - /** - * Get all certificates in a paginated manner. - * - * @param startIndex index of the first record to be fetched - * @param length number of records to be fetched starting from the start index. - * @return paginated result of certificate. - * @throws MDMAPIException - */ - @GET - @Path("paginate") - public Response getAllCertificates(@HeaderParam("Accept") String acceptHeader, - @QueryParam("start") int startIndex, - @QueryParam("length") int length) - throws MDMAPIException { - MediaType responseMediaType = DeviceMgtAPIUtils.getResponseMediaType(acceptHeader); - Message message = new Message(); - - if (startIndex < 0) { - message.setErrorMessage("Invalid start index."); - message.setDiscription("Start index cannot be less that 0."); - return Response.status(Response.Status.BAD_REQUEST).entity(message).type(responseMediaType).build(); - } else if (length <= 0) { - message.setErrorMessage("Invalid length value."); - message.setDiscription("Length should be a positive integer."); - return Response.status(Response.Status.BAD_REQUEST).entity(message).type(responseMediaType).build(); - } - - CertificateManagementService certificateService = DeviceMgtAPIUtils.getCertificateManagementService(); - PaginationRequest paginationRequest = new PaginationRequest(startIndex, length); - try { - PaginationResult certificates = certificateService.getAllCertificates(paginationRequest); - return Response.status(Response.Status.OK).entity(certificates).type(responseMediaType).build(); - } catch (CertificateManagementDAOException e) { - String msg = "Error occurred while fetching all certificates."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).type(responseMediaType).build(); - } - } - - @DELETE - @Path("{serialNumber}") - public Response removeCertificate(@HeaderParam("Accept") String acceptHeader, - @PathParam("serialNumber") String serialNumber) throws MDMAPIException { - MediaType responseMediaType = DeviceMgtAPIUtils.getResponseMediaType(acceptHeader); - Message message = new Message(); - - if (serialNumber == null || serialNumber.isEmpty()) { - message.setErrorMessage("Invalid serial number"); - message.setDiscription("Serial number is missing or invalid."); - return Response.status(Response.Status.BAD_REQUEST).entity(message).type(responseMediaType).build(); - } - - CertificateManagementService certificateService = DeviceMgtAPIUtils.getCertificateManagementService(); - boolean deleted; - try { - deleted = certificateService.removeCertificate(serialNumber); - if(deleted){ - return Response.status(Response.Status.OK).entity(deleted).type(responseMediaType).build(); - } else { - return Response.status(Response.Status.GONE).entity(deleted).type(responseMediaType).build(); - } - } catch (CertificateManagementDAOException e) { - String msg = "Error occurred while converting PEM file to X509Certificate"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).type(responseMediaType).build(); - } - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Configuration.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Configuration.java deleted file mode 100644 index ac305b2008..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Configuration.java +++ /dev/null @@ -1,113 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.api; - -import org.apache.commons.httpclient.HttpStatus; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.device.mgt.common.configuration.mgt.ConfigurationEntry; -import org.wso2.carbon.device.mgt.common.configuration.mgt.ConfigurationManagementException; -import org.wso2.carbon.device.mgt.common.configuration.mgt.TenantConfiguration; -import org.wso2.carbon.mdm.api.util.DeviceMgtAPIUtils; -import org.wso2.carbon.mdm.api.util.MDMAppConstants; -import org.wso2.carbon.mdm.api.util.ResponsePayload; -import org.wso2.carbon.policy.mgt.core.util.PolicyManagerUtil; - -import javax.ws.rs.Consumes; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Produces; -import javax.ws.rs.core.Response; -import java.util.ArrayList; -import java.util.List; - -/** - * General Tenant Configuration REST-API implementation. - * All end points support JSON, XMl with content negotiation. - */ - -@SuppressWarnings("NonJaxWsWebServices") -@Produces({"application/json", "application/xml"}) -@Consumes({ "application/json", "application/xml" }) -public class Configuration { - - private static Log log = LogFactory.getLog(Configuration.class); - - @POST - public Response saveTenantConfiguration(TenantConfiguration configuration) { - ResponsePayload responseMsg = new ResponsePayload(); - try { - DeviceMgtAPIUtils.getTenantConfigurationManagementService().saveConfiguration(configuration, - MDMAppConstants.RegistryConstants.GENERAL_CONFIG_RESOURCE_PATH); - //Schedule the task service - DeviceMgtAPIUtils.scheduleTaskService(DeviceMgtAPIUtils.getNotifierFrequency(configuration)); - responseMsg.setMessageFromServer("Tenant configuration saved successfully."); - responseMsg.setStatusCode(HttpStatus.SC_CREATED); - return Response.status(Response.Status.CREATED).entity(responseMsg).build(); - } catch (ConfigurationManagementException e) { - String msg = "Error occurred while saving the tenant configuration."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - @GET - public Response getConfiguration() { - String msg; - try { - TenantConfiguration tenantConfiguration = DeviceMgtAPIUtils.getTenantConfigurationManagementService(). - getConfiguration(MDMAppConstants.RegistryConstants.GENERAL_CONFIG_RESOURCE_PATH); - ConfigurationEntry configurationEntry = new ConfigurationEntry(); - configurationEntry.setContentType("text"); - configurationEntry.setName("notifierFrequency"); - configurationEntry.setValue(PolicyManagerUtil.getMonitoringFequency()); - List configList = tenantConfiguration.getConfiguration(); - if (configList == null) { - configList = new ArrayList<>(); - } - configList.add(configurationEntry); - tenantConfiguration.setConfiguration(configList); - return Response.status(Response.Status.OK).entity(tenantConfiguration).build(); - } catch (ConfigurationManagementException e) { - msg = "Error occurred while retrieving the tenant configuration."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - @PUT - public Response updateConfiguration(TenantConfiguration configuration) { - ResponsePayload responseMsg = new ResponsePayload(); - try { - DeviceMgtAPIUtils.getTenantConfigurationManagementService().saveConfiguration(configuration, - MDMAppConstants.RegistryConstants.GENERAL_CONFIG_RESOURCE_PATH); - //Schedule the task service - DeviceMgtAPIUtils.scheduleTaskService(DeviceMgtAPIUtils.getNotifierFrequency(configuration)); - responseMsg.setMessageFromServer("Tenant configuration updated successfully."); - responseMsg.setStatusCode(HttpStatus.SC_CREATED); - return Response.status(Response.Status.CREATED).entity(responseMsg).build(); - } catch (ConfigurationManagementException e) { - String msg = "Error occurred while updating the tenant configuration."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Device.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Device.java deleted file mode 100644 index 487c93ada5..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Device.java +++ /dev/null @@ -1,234 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.api; - -import org.apache.commons.httpclient.HttpStatus; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.device.mgt.common.DeviceIdentifier; -import org.wso2.carbon.device.mgt.common.DeviceManagementException; -import org.wso2.carbon.device.mgt.common.EnrolmentInfo; -import org.wso2.carbon.device.mgt.common.PaginationRequest; -import org.wso2.carbon.device.mgt.core.dto.DeviceType; -import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderService; -import org.wso2.carbon.mdm.api.util.DeviceMgtAPIUtils; -import org.wso2.carbon.mdm.api.util.ResponsePayload; - -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; -import java.util.List; - -/** - * Device related operations - */ -@SuppressWarnings("NonJaxWsWebServices") -public class Device { - private static Log log = LogFactory.getLog(Device.class); - - /** - * Get all devices. We have to use accept all the necessary query parameters sent by datatable. - * Hence had to put lot of query params here. - * - * @return Device List - */ - @GET - public Response getAllDevices(@QueryParam("type") String type, @QueryParam("user") String user, - @QueryParam("role") String role, @QueryParam("status") EnrolmentInfo.Status status, - @QueryParam("start") int startIdx, @QueryParam("length") int length, - @QueryParam("device-name") String deviceName, - @QueryParam("ownership") EnrolmentInfo.OwnerShip ownership) { - try { - DeviceManagementProviderService service = DeviceMgtAPIUtils.getDeviceManagementService(); - //Length > 0 means this is a pagination request. - if (length > 0) { - PaginationRequest paginationRequest = new PaginationRequest(startIdx, length); - paginationRequest.setDeviceName(deviceName); - paginationRequest.setOwner(user); - if (ownership != null) { - paginationRequest.setOwnership(ownership.toString()); - } - if (status != null) { - paginationRequest.setStatus(status.toString()); - } - paginationRequest.setDeviceType(type); - return Response.status(Response.Status.OK).entity(service.getAllDevices(paginationRequest)).build(); - } - - List allDevices; - if ((type != null) && !type.isEmpty()) { - allDevices = service.getAllDevices(type); - } else if ((user != null) && !user.isEmpty()) { - allDevices = service.getDevicesOfUser(user); - } else if ((role != null) && !role.isEmpty()) { - allDevices = service.getAllDevicesOfRole(role); - } else if (status != null) { - allDevices = service.getDevicesByStatus(status); - } else if (deviceName != null) { - allDevices = service.getDevicesByName(deviceName); - } else { - allDevices = service.getAllDevices(); - } - return Response.status(Response.Status.OK).entity(allDevices).build(); - } catch (DeviceManagementException e) { - String msg = "Error occurred while fetching the device list."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - /** - * Fetch device details for a given device type and device Id. - * - * @return Device wrapped inside Response - */ - @GET - @Path("view") - @Produces({MediaType.APPLICATION_JSON}) - public Response getDevice(@QueryParam("type") String type, - @QueryParam("id") String id) { - DeviceIdentifier deviceIdentifier = DeviceMgtAPIUtils.instantiateDeviceIdentifier(type, id); - DeviceManagementProviderService deviceManagementProviderService = DeviceMgtAPIUtils.getDeviceManagementService(); - org.wso2.carbon.device.mgt.common.Device device; - try { - device = deviceManagementProviderService.getDevice(deviceIdentifier); - } catch (DeviceManagementException e) { - String msg = "Error occurred while fetching the device information."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - ResponsePayload responsePayload = new ResponsePayload(); - if (device == null) { - responsePayload.setStatusCode(HttpStatus.SC_NOT_FOUND); - responsePayload.setMessageFromServer("Requested device by type: " + - type + " and id: " + id + " does not exist."); - return Response.status(Response.Status.NOT_FOUND).entity(responsePayload).build(); - } else { - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("Sending Requested device by type: " + type + " and id: " + id + "."); - responsePayload.setResponseContent(device); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - } - - /** - * Fetch device details of a given user. - * - * @param user User Name - * @return Device - */ - @GET - @Path("user/{user}") - public Response getDevice(@PathParam("user") String user) { - List devices; - try { - devices = DeviceMgtAPIUtils.getDeviceManagementService().getDevicesOfUser(user); - if (devices == null) { - return Response.status(Response.Status.NOT_FOUND).build(); - } - return Response.status(Response.Status.OK).entity(devices).build(); - } catch (DeviceManagementException e) { - String msg = "Error occurred while fetching the devices list of given user."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - /** - * Fetch device count of a given user. - * - * @param user User Name - * @return Device - */ - @GET - @Path("user/{user}/count") - public Response getDeviceCount(@PathParam("user") String user) { - try { - Integer count = DeviceMgtAPIUtils.getDeviceManagementService().getDeviceCount(user); - return Response.status(Response.Status.OK).entity(count).build(); - } catch (DeviceManagementException e) { - String msg = "Error occurred while fetching the devices list of given user."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - /** - * Get current device count - * - * @return device count - */ - @GET - @Path("count") - public Response getDeviceCount() { - try { - Integer count = DeviceMgtAPIUtils.getDeviceManagementService().getDeviceCount(); - return Response.status(Response.Status.OK).entity(count).build(); - } catch (DeviceManagementException e) { - String msg = "Error occurred while fetching the device count."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - /** - * Get the list of devices that matches with the given name. - * - * @param deviceName Device name - * @param tenantDomain Callee tenant domain - * @return list of devices. - */ - @GET - @Path("name/{name}/{tenantDomain}") - public Response getDevicesByName(@PathParam("name") String deviceName, - @PathParam("tenantDomain") String tenantDomain) { - List devices; - try { - devices = DeviceMgtAPIUtils.getDeviceManagementService().getDevicesByName(deviceName); - return Response.status(Response.Status.OK).entity(devices).build(); - } catch (DeviceManagementException e) { - String msg = "Error occurred while fetching the devices list of device name."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - /** - * Get the list of available device types. - * - * @return list of device types. - */ - @GET - @Path("types") - public Response getDeviceTypes() { - List deviceTypes; - try { - deviceTypes = DeviceMgtAPIUtils.getDeviceManagementService().getAvailableDeviceTypes(); - return Response.status(Response.Status.OK).entity(deviceTypes).build(); - } catch (DeviceManagementException e) { - String msg = "Error occurred while fetching the list of device types."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } -} \ No newline at end of file diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/DeviceInformation.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/DeviceInformation.java deleted file mode 100644 index 81fe19e73c..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/DeviceInformation.java +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - - -package org.wso2.carbon.mdm.api; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.device.mgt.common.DeviceIdentifier; -import org.wso2.carbon.device.mgt.common.device.details.DeviceInfo; -import org.wso2.carbon.device.mgt.common.device.details.DeviceLocation; -import org.wso2.carbon.device.mgt.core.device.details.mgt.DeviceDetailsMgtException; -import org.wso2.carbon.device.mgt.core.device.details.mgt.DeviceInformationManager; -import org.wso2.carbon.mdm.api.util.DeviceMgtAPIUtils; - -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.core.Response; - -@SuppressWarnings("NonJaxWsWebServices") -public class DeviceInformation { - - private static Log log = LogFactory.getLog(DeviceInformation.class); - - @GET - @Path("{type}/{id}") - public Response getDeviceInfo(@PathParam("type") String type, @PathParam("id") String id) { - DeviceInformationManager informationManager; - DeviceInfo deviceInfo; - try { - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); - deviceIdentifier.setId(id); - deviceIdentifier.setType(type); - informationManager = DeviceMgtAPIUtils.getDeviceInformationManagerService(); - deviceInfo = informationManager.getDeviceInfo(deviceIdentifier); - } catch (DeviceDetailsMgtException e) { - String msg = "Error occurred while getting the device information."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - return Response.status(Response.Status.OK).entity(deviceInfo).build(); - } - - - @GET - @Path("location/{type}/{id}") - public Response getDeviceLocation(@PathParam("type") String type, @PathParam("id") String id) { - DeviceInformationManager informationManager; - DeviceLocation deviceLocation; - try { - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); - deviceIdentifier.setId(id); - deviceIdentifier.setType(type); - informationManager = DeviceMgtAPIUtils.getDeviceInformationManagerService(); - deviceLocation = informationManager.getDeviceLocation(deviceIdentifier); - } catch (DeviceDetailsMgtException e) { - String msg = "Error occurred while getting the device location."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - return Response.status(Response.Status.OK).entity(deviceLocation).build(); - } -} - diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/DeviceNotification.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/DeviceNotification.java deleted file mode 100644 index 0f85351571..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/DeviceNotification.java +++ /dev/null @@ -1,109 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.api; - -import org.apache.commons.httpclient.HttpStatus; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.device.mgt.common.notification.mgt.Notification; -import org.wso2.carbon.device.mgt.common.notification.mgt.NotificationManagementException; -import org.wso2.carbon.mdm.api.util.DeviceMgtAPIUtils; -import org.wso2.carbon.mdm.api.util.ResponsePayload; - -import javax.ws.rs.Consumes; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.core.Response; -import java.util.List; - -/** - * DeviceNotification management REST-API implementation. - * All end points support JSON, XMl with content negotiation. - */ -@SuppressWarnings("NonJaxWsWebServices") -@Produces({"application/json", "application/xml"}) -@Consumes({ "application/json", "application/xml" }) -public class DeviceNotification { - - private static Log log = LogFactory.getLog(Configuration.class); - - @GET - public Response getNotifications() { - String msg; - try { - List notifications = DeviceMgtAPIUtils.getNotificationManagementService().getAllNotifications(); - return Response.status(Response.Status.OK).entity(notifications).build(); - } catch (NotificationManagementException e) { - msg = "Error occurred while retrieving the notification list."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - @GET - @Path("{status}") - public Response getNotificationsByStatus(@PathParam("status") Notification.Status status) { - String msg; - try { - List notifications = DeviceMgtAPIUtils.getNotificationManagementService().getNotificationsByStatus(status); - return Response.status(Response.Status.OK).entity(notifications).build(); - } catch (NotificationManagementException e) { - msg = "Error occurred while retrieving the notification list."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - @PUT - @Path("{id}/{status}") - public Response updateNotificationStatus(@PathParam("id") int id, - @PathParam("status") Notification.Status status) { - ResponsePayload responseMsg = new ResponsePayload(); - try { - DeviceMgtAPIUtils.getNotificationManagementService().updateNotificationStatus(id, status); - responseMsg.setMessageFromServer("Notification status updated successfully."); - responseMsg.setStatusCode(HttpStatus.SC_ACCEPTED); - return Response.status(Response.Status.ACCEPTED).entity(responseMsg).build(); - } catch (NotificationManagementException e) { - String msg = "Error occurred while updating notification status."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - @POST - public Response addNotification(Notification notification) { - ResponsePayload responseMsg = new ResponsePayload(); - try { - DeviceMgtAPIUtils.getNotificationManagementService().addNotification(notification); - responseMsg.setMessageFromServer("Notification has added successfully."); - responseMsg.setStatusCode(HttpStatus.SC_CREATED); - return Response.status(Response.Status.CREATED).entity(responseMsg).build(); - } catch (NotificationManagementException e) { - String msg = "Error occurred while updating notification status."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/DeviceSearch.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/DeviceSearch.java deleted file mode 100644 index fc9a7bd3a6..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/DeviceSearch.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - - -package org.wso2.carbon.mdm.api; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.device.mgt.common.device.details.DeviceWrapper; -import org.wso2.carbon.device.mgt.common.search.SearchContext; -import org.wso2.carbon.device.mgt.core.search.mgt.SearchManagerService; -import org.wso2.carbon.device.mgt.core.search.mgt.SearchMgtException; -import org.wso2.carbon.mdm.api.util.DeviceMgtAPIUtils; - -import javax.ws.rs.GET; -import javax.ws.rs.core.Response; -import java.util.List; - -@SuppressWarnings("NonJaxWsWebServices") -public class DeviceSearch { - - private static Log log = LogFactory.getLog(DeviceSearch.class); - - @GET - public Response getDeviceInfo(SearchContext searchContext) { - SearchManagerService searchManagerService; - List devices; - try { - searchManagerService = DeviceMgtAPIUtils.getSearchManagerService(); - devices = searchManagerService.search(searchContext); - - } catch (SearchMgtException e) { - String msg = "Error occurred while searching the device information."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - return Response.status(Response.Status.OK).entity(devices).build(); - } -} - diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Feature.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Feature.java deleted file mode 100644 index 9cd8c305e3..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Feature.java +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.api; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.device.mgt.common.DeviceManagementException; -import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderService; -import org.wso2.carbon.mdm.api.util.DeviceMgtAPIUtils; - -import javax.ws.rs.Consumes; -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.Response; -import java.util.List; - -/** - * Features - */ -@SuppressWarnings("NonJaxWsWebServices") -@Produces({"application/json", "application/xml"}) -@Consumes({"application/json", "application/xml"}) -public class Feature { - private static Log log = LogFactory.getLog(Feature.class); - - /** - * Get all features for Mobile Device Type - * - * @return Feature - */ - @GET - @Path("/{type}") - public Response getFeatures(@PathParam("type") String type) { - List features; - DeviceManagementProviderService dmService; - try { - dmService = DeviceMgtAPIUtils.getDeviceManagementService(); - features = dmService.getFeatureManager(type).getFeatures(); - } catch (DeviceManagementException e) { - String msg = "Error occurred while retrieving the list of features"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - return Response.status(Response.Status.OK).entity(features).build(); - } - -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Group.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Group.java deleted file mode 100644 index 8c86419aea..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Group.java +++ /dev/null @@ -1,443 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.api; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.context.PrivilegedCarbonContext; -import org.wso2.carbon.device.mgt.common.Device; -import org.wso2.carbon.device.mgt.common.DeviceIdentifier; -import org.wso2.carbon.device.mgt.common.PaginationResult; -import org.wso2.carbon.device.mgt.common.group.mgt.DeviceGroup; -import org.wso2.carbon.device.mgt.common.group.mgt.GroupAlreadyEixistException; -import org.wso2.carbon.device.mgt.common.group.mgt.GroupManagementException; -import org.wso2.carbon.device.mgt.common.group.mgt.GroupUser; -import org.wso2.carbon.device.mgt.core.service.GroupManagementProviderService; -import org.wso2.carbon.mdm.api.util.DeviceMgtAPIUtils; - -import javax.ws.rs.Consumes; -import javax.ws.rs.DELETE; -import javax.ws.rs.FormParam; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.Response; -import java.util.Date; -import java.util.List; - -@SuppressWarnings("NonJaxWsWebServices") -public class Group { - - private static final String DEFAULT_ADMIN_ROLE = "admin"; - private static final String DEFAULT_OPERATOR_ROLE = "invoke-device-operations"; - private static final String DEFAULT_STATS_MONITOR_ROLE = "view-statistics"; - private static final String DEFAULT_VIEW_POLICIES = "view-policies"; - private static final String DEFAULT_MANAGE_POLICIES = "mange-policies"; - private static final String DEFAULT_VIEW_EVENTS = "view-events"; - private static final String[] DEFAULT_ADMIN_PERMISSIONS = {"/permission/device-mgt/admin/groups", - "/permission/device-mgt/user/groups"}; - private static final String[] DEFAULT_OPERATOR_PERMISSIONS = {"/permission/device-mgt/user/groups/device_operation"}; - private static final String[] DEFAULT_STATS_MONITOR_PERMISSIONS = {"/permission/device-mgt/user/groups/device_monitor"}; - private static final String[] DEFAULT_MANAGE_POLICIES_PERMISSIONS = {"/permission/device-mgt/user/groups/device_policies/add"}; - private static final String[] DEFAULT_VIEW_POLICIES_PERMISSIONS = {"/permission/device-mgt/user/groups/device_policies/view"}; - private static final String[] DEFAULT_VIEW_EVENTS_PERMISSIONS = {"/permission/device-mgt/user/groups/device_events"}; - - private static Log log = LogFactory.getLog(Group.class); - - @POST - @Consumes("application/json") - public Response createGroup(DeviceGroup group) { - String owner = PrivilegedCarbonContext.getThreadLocalCarbonContext().getUsername(); - if (group == null) { - return Response.status(Response.Status.BAD_REQUEST).build(); - } - group.setOwner(owner); - group.setDateOfCreation(new Date().getTime()); - group.setDateOfLastUpdate(new Date().getTime()); - try { - GroupManagementProviderService groupManagementService = DeviceMgtAPIUtils.getGroupManagementProviderService(); - groupManagementService.createGroup(group, DEFAULT_ADMIN_ROLE, DEFAULT_ADMIN_PERMISSIONS); - groupManagementService.addGroupSharingRole(owner, group.getName(), owner, - DEFAULT_OPERATOR_ROLE, - DEFAULT_OPERATOR_PERMISSIONS); - groupManagementService.addGroupSharingRole(owner, group.getName(), owner, DEFAULT_STATS_MONITOR_ROLE, - DEFAULT_STATS_MONITOR_PERMISSIONS); - groupManagementService.addGroupSharingRole(owner, group.getName(), owner, DEFAULT_VIEW_POLICIES, - DEFAULT_VIEW_POLICIES_PERMISSIONS); - groupManagementService.addGroupSharingRole(owner, group.getName(), owner, DEFAULT_MANAGE_POLICIES, - DEFAULT_MANAGE_POLICIES_PERMISSIONS); - groupManagementService.addGroupSharingRole(owner, group.getName(), owner, DEFAULT_VIEW_EVENTS, - DEFAULT_VIEW_EVENTS_PERMISSIONS); - return Response.status(Response.Status.CREATED).build(); - } catch (GroupAlreadyEixistException e) { - return Response.status(Response.Status.CONFLICT).entity(e.getMessage()).build(); - } catch (GroupManagementException e) { - log.error(e.getErrorMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @Path("/{owner}/{groupName}") - @PUT - @Consumes("application/json") - @Produces("application/json") - public Response updateGroup(@PathParam("groupName") String groupName, @PathParam("owner") String owner, - DeviceGroup deviceGroup) { - try { - DeviceMgtAPIUtils.getGroupManagementProviderService().updateGroup(deviceGroup, groupName, owner); - return Response.status(Response.Status.OK).build(); - } catch (GroupManagementException e) { - log.error(e.getErrorMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @Path("/{owner}/{groupName}") - @DELETE - public Response deleteGroup(@PathParam("groupName") String groupName, @PathParam("owner") String owner) { - try { - DeviceMgtAPIUtils.getGroupManagementProviderService().deleteGroup(groupName, owner); - return Response.status(Response.Status.OK).build(); - } catch (GroupManagementException e) { - log.error(e.getMessage()); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @GET - @Produces("application/json") - public Response getGroups(@QueryParam("start") int startIndex, @PathParam("rowCount") int rowCount) { - try { - PaginationResult paginationResult = DeviceMgtAPIUtils.getGroupManagementProviderService() - .getGroups(startIndex, rowCount); - if (paginationResult.getRecordsTotal() > 0) { - return Response.status(Response.Status.OK).entity(paginationResult).build(); - } else { - return Response.status(Response.Status.NOT_FOUND).build(); - } - } catch (GroupManagementException e) { - log.error(e.getMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @Path("/user/{user}") - @GET - @Produces("application/json") - public Response getGroups(@PathParam("user") String userName, @QueryParam("start") int startIndex, - @QueryParam("rowCount") int rowCount) { - try { - PaginationResult paginationResult = DeviceMgtAPIUtils.getGroupManagementProviderService() - .getGroups(userName, startIndex, rowCount); - if (paginationResult.getRecordsTotal() > 0) { - return Response.status(Response.Status.OK).entity(paginationResult).build(); - } else { - return Response.status(Response.Status.NOT_FOUND).build(); - } - } catch (GroupManagementException e) { - log.error(e.getMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @Path("/{owner}/{groupName}") - @GET - @Produces("application/json") - public Response getGroup(@PathParam("groupName") String groupName, @PathParam("owner") String owner) { - try { - DeviceGroup deviceGroup = DeviceMgtAPIUtils.getGroupManagementProviderService().getGroup(groupName, owner); - if (deviceGroup != null) { - return Response.status(Response.Status.OK).entity(deviceGroup).build(); - } else { - return Response.status(Response.Status.NOT_FOUND).build(); - } - } catch (GroupManagementException e) { - log.error(e.getMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @Path("/search") - @GET - @Produces("application/json") - public Response findGroups(@QueryParam("groupName") String groupName, - @QueryParam("userName") String userName) { - try { - List groups = DeviceMgtAPIUtils.getGroupManagementProviderService() - .findInGroups(groupName, userName); - DeviceGroup[] deviceGroups = new DeviceGroup[groups.size()]; - groups.toArray(deviceGroups); - return Response.status(Response.Status.OK).entity(deviceGroups).build(); - } catch (GroupManagementException e) { - log.error(e.getMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @Path("/user/{user}/all") - @GET - @Produces("application/json") - public Response getGroups(@PathParam("user") String userName, - @QueryParam("permission") String permission) { - try { - GroupManagementProviderService groupManagementService = DeviceMgtAPIUtils.getGroupManagementProviderService(); - List groups; - if (permission != null) { - groups = groupManagementService.getGroups(userName, permission); - } else { - groups = groupManagementService.getGroups(userName); - } - DeviceGroup[] deviceGroups = new DeviceGroup[groups.size()]; - groups.toArray(deviceGroups); - return Response.status(Response.Status.OK).entity(deviceGroups).build(); - } catch (GroupManagementException e) { - log.error(e.getMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @Path("/user/{user}/count") - @GET - @Produces("application/json") - public Response getGroupCount(@PathParam("user") String userName) { - try { - int count = DeviceMgtAPIUtils.getGroupManagementProviderService().getGroupCount(userName); - return Response.status(Response.Status.OK).entity(count).build(); - } catch (GroupManagementException e) { - log.error(e.getMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @Path("/{owner}/{groupName}/share") - @PUT - @Produces("application/json") - public Response shareGroup(@PathParam("groupName") String groupName, @PathParam("owner") String owner, - @FormParam("shareUser") String shareUser, - @FormParam("roleName") String sharingRole) { - - try { - boolean isShared = DeviceMgtAPIUtils.getGroupManagementProviderService().shareGroup( - shareUser, groupName, owner, sharingRole); - if (isShared) { - return Response.status(Response.Status.OK).build(); - } else { - return Response.status(Response.Status.NOT_FOUND).build(); - } - } catch (GroupManagementException e) { - log.error(e.getMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @Path("/{owner}/{groupName}/unshare") - @PUT - @Produces("application/json") - public Response unShareGroup(@PathParam("groupName") String groupName, @PathParam("owner") String owner, - @FormParam("unShareUser") String unShareUser, - @FormParam("roleName") String sharingRole) { - try { - boolean isUnShared = DeviceMgtAPIUtils.getGroupManagementProviderService().unshareGroup( - unShareUser, groupName, owner, sharingRole); - if (isUnShared) { - return Response.status(Response.Status.OK).build(); - } else { - return Response.status(Response.Status.NOT_FOUND).build(); - } - } catch (GroupManagementException e) { - log.error(e.getMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @Path("/{owner}/{groupName}/share/roles/{roleName}/permissions") - @PUT - @Produces("application/json") - public Response addSharing(@QueryParam("shareUser") String shareUser, @PathParam("groupName") String groupName, - @PathParam("owner") String owner, - @PathParam("roleName") String roleName, - @FormParam("permissions") String[] permissions) { - - try { - boolean isAdded = DeviceMgtAPIUtils.getGroupManagementProviderService().addGroupSharingRole( - shareUser, groupName, owner, roleName, permissions); - if (isAdded) { - return Response.status(Response.Status.OK).build(); - } else { - return Response.status(Response.Status.NOT_FOUND).build(); - } - } catch (GroupManagementException e) { - log.error(e.getMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @DELETE - @Path("/{owner}/{groupName}/share/roles/{roleName}/permissions") - @Produces("application/json") - public Response removeSharing(@QueryParam("userName") String userName, @PathParam("groupName") String groupName, - @PathParam("owner") String owner, - @PathParam("roleName") String roleName) { - try { - boolean isRemoved = DeviceMgtAPIUtils.getGroupManagementProviderService().removeGroupSharingRole( - groupName, owner, roleName); - if (isRemoved) { - return Response.status(Response.Status.OK).build(); - } else { - return Response.status(Response.Status.NOT_FOUND).build(); - } - } catch (GroupManagementException e) { - log.error(e.getMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @GET - @Path("/{owner}/{groupName}/share/roles") - @Produces("application/json") - public Response getRoles(@PathParam("groupName") String groupName, - @PathParam("owner") String owner, @QueryParam("userName") String userName) { - try { - List roles; - if (userName != null && !userName.isEmpty()) { - roles = DeviceMgtAPIUtils.getGroupManagementProviderService().getRoles(userName, groupName, owner); - } else { - roles = DeviceMgtAPIUtils.getGroupManagementProviderService().getRoles(groupName, owner); - } - String[] rolesArray = new String[roles.size()]; - roles.toArray(rolesArray); - return Response.status(Response.Status.OK).entity(rolesArray).build(); - } catch (GroupManagementException e) { - log.error(e.getMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @GET - @Path("/{owner}/{groupName}/users") - @Produces("application/json") - public Response getUsers(@PathParam("groupName") String groupName, - @PathParam("owner") String owner) { - try { - List users = DeviceMgtAPIUtils.getGroupManagementProviderService().getUsers( - groupName, owner); - GroupUser[] usersArray = new GroupUser[users.size()]; - users.toArray(usersArray); - return Response.status(Response.Status.OK).entity(usersArray).build(); - } catch (GroupManagementException e) { - log.error(e.getMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @GET - @Path("/{owner}/{groupName}/devices/all") - @Produces("application/json") - public Response getDevices(@PathParam("groupName") String groupName, - @PathParam("owner") String owner) { - try { - List devices = DeviceMgtAPIUtils.getGroupManagementProviderService().getDevices( - groupName, owner); - Device[] deviceArray = new Device[devices.size()]; - devices.toArray(deviceArray); - return Response.status(Response.Status.OK).entity(deviceArray).build(); - } catch (GroupManagementException e) { - log.error(e.getMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @GET - @Path("/{owner}/{groupName}/devices/count") - @Produces("application/json") - public Response getDeviceCount(@PathParam("groupName") String groupName, - @PathParam("owner") String owner) { - try { - int count = DeviceMgtAPIUtils.getGroupManagementProviderService().getDeviceCount(groupName, owner); - return Response.status(Response.Status.OK).entity(count).build(); - } catch (GroupManagementException e) { - log.error(e.getMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @PUT - @Path("/{owner}/{groupName}/devices/{deviceType}/{deviceId}") - @Produces("application/json") - public Response addDevice(@PathParam("groupName") String groupName, - @PathParam("owner") String owner, @PathParam("deviceId") String deviceId, - @PathParam("deviceType") String deviceType, - @FormParam("userName") String userName) { - try { - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(deviceId, deviceType); - boolean isAdded = DeviceMgtAPIUtils.getGroupManagementProviderService().addDevice( - deviceIdentifier, groupName, owner); - if (isAdded) { - return Response.status(Response.Status.OK).build(); - } else { - return Response.status(Response.Status.NOT_FOUND).build(); - } - } catch (GroupManagementException e) { - log.error(e.getMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @DELETE - @Path("/{owner}/{groupName}/devices/{deviceType}/{deviceId}") - @Produces("application/json") - public Response removeDevice(@PathParam("groupName") String groupName, - @PathParam("owner") String owner, @PathParam("deviceId") String deviceId, - @PathParam("deviceType") String deviceType) { - try { - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(deviceId, deviceType); - boolean isRemoved = DeviceMgtAPIUtils.getGroupManagementProviderService().removeDevice( - deviceIdentifier, groupName, owner); - if (isRemoved) { - return Response.status(Response.Status.OK).build(); - } else { - return Response.status(Response.Status.NOT_FOUND).build(); - } - } catch (GroupManagementException e) { - log.error(e.getMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - - @GET - @Path("/{owner}/{groupName}/users/{userName}/permissions") - @Produces("application/json") - public Response getPermissions(@PathParam("userName") String userName, - @PathParam("groupName") String groupName, - @PathParam("owner") String owner) { - try { - String[] permissions = DeviceMgtAPIUtils.getGroupManagementProviderService() - .getPermissions(userName, groupName, owner); - return Response.status(Response.Status.OK).entity(permissions).build(); - } catch (GroupManagementException e) { - log.error(e.getMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build(); - } - } - -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/License.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/License.java deleted file mode 100644 index fbf0badc9a..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/License.java +++ /dev/null @@ -1,101 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.api; - -import org.apache.commons.httpclient.HttpStatus; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.device.mgt.common.DeviceManagementException; -import org.wso2.carbon.mdm.api.util.DeviceMgtAPIUtils; -import org.wso2.carbon.mdm.api.util.ResponsePayload; - -import javax.ws.rs.GET; -import javax.ws.rs.POST; -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; - -/** - * This class represents license related operations. - */ -@SuppressWarnings("NonJaxWsWebServices") -public class License { - - private static Log log = LogFactory.getLog(License.class); - - /** - * This method returns the license text related to a given device type and language code. - * - * @param deviceType Device type, ex: android, ios - * @param languageCode Language code, ex: en_US - * @return Returns the license text - */ - @GET - @Path ("{deviceType}/{languageCode}") - @Produces ({MediaType.APPLICATION_JSON}) - public Response getLicense(@PathParam ("deviceType") String deviceType, - @PathParam("languageCode") String languageCode) { - - org.wso2.carbon.device.mgt.common.license.mgt.License license; - ResponsePayload responsePayload; - try { - license = DeviceMgtAPIUtils.getDeviceManagementService().getLicense(deviceType, languageCode); - if (license == null) { - return Response.status(HttpStatus.SC_NOT_FOUND).build(); - } - responsePayload = ResponsePayload.statusCode(HttpStatus.SC_OK). - messageFromServer("License for '" + deviceType + "' was retrieved successfully"). - responseContent(license.getText()). - build(); - } catch (DeviceManagementException e) { - String msg = "Error occurred while retrieving the license configured for '" + deviceType + "' device type"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - /** - * This method is used to add license to a specific device type. - * - * @param deviceType Device type, ex: android, ios - * @param license License object - * @return Returns the acknowledgement for the action - */ - @POST - @Path ("{deviceType}") - public Response addLicense(@PathParam ("deviceType") String deviceType, - org.wso2.carbon.device.mgt.common.license.mgt.License license) { - - ResponsePayload responsePayload; - try { - DeviceMgtAPIUtils.getDeviceManagementService().addLicense(deviceType, license); - responsePayload = ResponsePayload.statusCode(HttpStatus.SC_OK). - messageFromServer("License added successfully for '" + deviceType + "' device type"). - build(); - } catch (DeviceManagementException e) { - String msg = "Error occurred while adding license for '" + deviceType + "' device type"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Operation.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Operation.java deleted file mode 100644 index 50b141aa30..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Operation.java +++ /dev/null @@ -1,220 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.api; - -import org.apache.commons.httpclient.HttpStatus; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.device.mgt.common.DeviceIdentifier; -import org.wso2.carbon.device.mgt.common.PaginationRequest; -import org.wso2.carbon.device.mgt.common.PaginationResult; -import org.wso2.carbon.device.mgt.common.Platform; -import org.wso2.carbon.device.mgt.common.app.mgt.Application; -import org.wso2.carbon.device.mgt.common.app.mgt.ApplicationManagementException; -import org.wso2.carbon.device.mgt.common.app.mgt.ApplicationManager; -import org.wso2.carbon.device.mgt.common.operation.mgt.OperationManagementException; -import org.wso2.carbon.device.mgt.core.app.mgt.ApplicationManagementProviderService; -import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderService; -import org.wso2.carbon.mdm.api.common.MDMAPIException; -import org.wso2.carbon.mdm.api.context.DeviceOperationContext; -import org.wso2.carbon.mdm.api.util.DeviceMgtAPIUtils; -import org.wso2.carbon.mdm.api.util.MDMAndroidOperationUtil; -import org.wso2.carbon.mdm.api.util.MDMIOSOperationUtil; -import org.wso2.carbon.mdm.api.util.ResponsePayload; -import org.wso2.carbon.mdm.beans.ApplicationWrapper; -import org.wso2.carbon.mdm.beans.MobileApp; - -import javax.ws.rs.Consumes; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.Response; -import java.util.List; - -/** - * Operation related REST-API implementation. - */ -@SuppressWarnings("NonJaxWsWebServices") -@Produces({"application/json", "application/xml"}) -@Consumes({"application/json", "application/xml"}) -public class Operation { - - private static Log log = LogFactory.getLog(Operation.class); - - /* @deprecated */ - @GET - public Response getAllOperations() { - List operations; - DeviceManagementProviderService dmService; - try { - dmService = DeviceMgtAPIUtils.getDeviceManagementService(); - operations = dmService.getOperations(null); - } catch (OperationManagementException e) { - String msg = "Error occurred while fetching the operations for the device."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - return Response.status(Response.Status.OK).entity(operations).build(); - } - - @GET - @Path("paginate/{type}/{id}") - public Response getDeviceOperations( - @PathParam("type") String type, @PathParam("id") String id, @QueryParam("start") int startIdx, - @QueryParam("length") int length, @QueryParam("search") String search) { - PaginationResult operations; - DeviceManagementProviderService dmService; - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); - PaginationRequest paginationRequest = new PaginationRequest(startIdx, length); - try { - deviceIdentifier.setType(type); - deviceIdentifier.setId(id); - dmService = DeviceMgtAPIUtils.getDeviceManagementService(); - operations = dmService.getOperations(deviceIdentifier, paginationRequest); - } catch (OperationManagementException e) { - String msg = "Error occurred while fetching the operations for the device."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - return Response.status(Response.Status.OK).entity(operations).build(); - } - - @GET - @Path("{type}/{id}") - public Response getDeviceOperations(@PathParam("type") String type, @PathParam("id") String id) { - List operations; - DeviceManagementProviderService dmService; - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); - try { - deviceIdentifier.setType(type); - deviceIdentifier.setId(id); - dmService = DeviceMgtAPIUtils.getDeviceManagementService(); - operations = dmService.getOperations(deviceIdentifier); - } catch (OperationManagementException e) { - String msg = "Error occurred while fetching the operations for the device."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - return Response.status(Response.Status.OK).entity(operations).build(); - } - - /* @deprecated */ - @POST - public Response addOperation(DeviceOperationContext operationContext) { - DeviceManagementProviderService dmService; - ResponsePayload responseMsg = new ResponsePayload(); - try { - dmService = DeviceMgtAPIUtils.getDeviceManagementService(); - int operationId = dmService.addOperation(operationContext.getOperation(), operationContext.getDevices()); - if (operationId > 0) { - responseMsg.setStatusCode(HttpStatus.SC_CREATED); - responseMsg.setMessageFromServer("Operation has added successfully."); - } - return Response.status(Response.Status.CREATED).entity(responseMsg).build(); - } catch (OperationManagementException e) { - String msg = "Error occurred while saving the operation"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - @GET - @Path("{type}/{id}/apps") - public Response getInstalledApps(@PathParam("type") String type, @PathParam("id") String id) { - List applications; - ApplicationManagementProviderService appManagerConnector; - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); - try { - deviceIdentifier.setType(type); - deviceIdentifier.setId(id); - appManagerConnector = DeviceMgtAPIUtils.getAppManagementService(); - applications = appManagerConnector.getApplicationListForDevice(deviceIdentifier); - } catch (ApplicationManagementException e) { - String msg = "Error occurred while fetching the apps of the device."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - return Response.status(Response.Status.CREATED).entity(applications).build(); - } - - @POST - @Path("installApp/{tenantDomain}") - public Response installApplication(ApplicationWrapper applicationWrapper, - @PathParam("tenantDomain") String tenantDomain) { - ResponsePayload responseMsg = new ResponsePayload(); - ApplicationManager appManagerConnector; - org.wso2.carbon.device.mgt.common.operation.mgt.Operation operation = null; - try { - appManagerConnector = DeviceMgtAPIUtils.getAppManagementService(); - MobileApp mobileApp = applicationWrapper.getApplication(); - - if (applicationWrapper.getDeviceIdentifiers() != null) { - for (DeviceIdentifier deviceIdentifier : applicationWrapper.getDeviceIdentifiers()) { - if (deviceIdentifier.getType().equals(Platform.android.toString())) { - operation = MDMAndroidOperationUtil.createInstallAppOperation(mobileApp); - } else if (deviceIdentifier.getType().equals(Platform.ios.toString())) { - operation = MDMIOSOperationUtil.createInstallAppOperation(mobileApp); - } - } - appManagerConnector.installApplicationForDevices(operation, applicationWrapper.getDeviceIdentifiers()); - } - responseMsg.setStatusCode(HttpStatus.SC_CREATED); - responseMsg.setMessageFromServer("Application installation request has been sent to the device."); - return Response.status(Response.Status.CREATED).entity(responseMsg).build(); - } catch (ApplicationManagementException | MDMAPIException e) { - String msg = "Error occurred while saving the operation"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - @POST - @Path("uninstallApp/{tenantDomain}") - public Response uninstallApplication(ApplicationWrapper applicationWrapper, - @PathParam("tenantDomain") String tenantDomain) { - ResponsePayload responseMsg = new ResponsePayload(); - ApplicationManager appManagerConnector; - org.wso2.carbon.device.mgt.common.operation.mgt.Operation operation = null; - try { - appManagerConnector = DeviceMgtAPIUtils.getAppManagementService(); - MobileApp mobileApp = applicationWrapper.getApplication(); - - if (applicationWrapper.getDeviceIdentifiers() != null) { - for (DeviceIdentifier deviceIdentifier : applicationWrapper.getDeviceIdentifiers()) { - if (deviceIdentifier.getType().equals(Platform.android.toString())) { - operation = MDMAndroidOperationUtil.createAppUninstallOperation(mobileApp); - } else if (deviceIdentifier.getType().equals(Platform.ios.toString())) { - operation = MDMIOSOperationUtil.createAppUninstallOperation(mobileApp); - } - } - appManagerConnector.installApplicationForDevices(operation, applicationWrapper.getDeviceIdentifiers()); - } - responseMsg.setStatusCode(HttpStatus.SC_CREATED); - responseMsg.setMessageFromServer("Application removal request has been sent to the device."); - return Response.status(Response.Status.CREATED).entity(responseMsg).build(); - } catch (ApplicationManagementException | MDMAPIException e) { - String msg = "Error occurred while saving the operation"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } -} \ No newline at end of file diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Policy.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Policy.java deleted file mode 100644 index 4878b32f9e..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Policy.java +++ /dev/null @@ -1,430 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.api; - -import org.apache.commons.httpclient.HttpStatus; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.device.mgt.common.DeviceIdentifier; -import org.wso2.carbon.mdm.api.common.MDMAPIException; -import org.wso2.carbon.mdm.api.util.DeviceMgtAPIUtils; -import org.wso2.carbon.mdm.api.util.ResponsePayload; -import org.wso2.carbon.mdm.beans.PolicyWrapper; -import org.wso2.carbon.mdm.beans.PriorityUpdatedPolicyWrapper; -import org.wso2.carbon.mdm.util.MDMUtil; -import org.wso2.carbon.policy.mgt.common.PolicyAdministratorPoint; -import org.wso2.carbon.policy.mgt.common.PolicyManagementException; -import org.wso2.carbon.policy.mgt.common.PolicyMonitoringTaskException; -import org.wso2.carbon.policy.mgt.common.monitor.ComplianceData; -import org.wso2.carbon.policy.mgt.common.monitor.PolicyComplianceException; -import org.wso2.carbon.policy.mgt.core.PolicyManagerService; -import org.wso2.carbon.policy.mgt.core.task.TaskScheduleService; - -import javax.ws.rs.Consumes; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -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.util.ArrayList; -import java.util.List; - -@SuppressWarnings("NonJaxWsWebServices") -public class Policy { - private static Log log = LogFactory.getLog(Policy.class); - - @POST - @Path("inactive-policy") - public Response addPolicy(PolicyWrapper policyWrapper) { - - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - ResponsePayload responseMsg = new ResponsePayload(); - org.wso2.carbon.policy.mgt.common.Policy policy = new org.wso2.carbon.policy.mgt.common.Policy(); - policy.setPolicyName(policyWrapper.getPolicyName()); - policy.setProfileId(policyWrapper.getProfileId()); - policy.setDescription(policyWrapper.getDescription()); - policy.setProfile(MDMUtil.convertProfile(policyWrapper.getProfile())); - policy.setOwnershipType(policyWrapper.getOwnershipType()); - policy.setRoles(policyWrapper.getRoles()); - policy.setUsers(policyWrapper.getUsers()); - policy.setTenantId(policyWrapper.getTenantId()); - policy.setCompliance(policyWrapper.getCompliance()); - - return addPolicy(policyManagementService, responseMsg, policy); - } - - @POST - @Path("active-policy") - public Response addActivePolicy(PolicyWrapper policyWrapper) { - - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - ResponsePayload responseMsg = new ResponsePayload(); - org.wso2.carbon.policy.mgt.common.Policy policy = new org.wso2.carbon.policy.mgt.common.Policy(); - policy.setPolicyName(policyWrapper.getPolicyName()); - policy.setProfileId(policyWrapper.getProfileId()); - policy.setDescription(policyWrapper.getDescription()); - policy.setProfile(MDMUtil.convertProfile(policyWrapper.getProfile())); - policy.setOwnershipType(policyWrapper.getOwnershipType()); - policy.setRoles(policyWrapper.getRoles()); - policy.setUsers(policyWrapper.getUsers()); - policy.setTenantId(policyWrapper.getTenantId()); - policy.setCompliance(policyWrapper.getCompliance()); - policy.setActive(true); - - return addPolicy(policyManagementService, responseMsg, policy); - } - - private Response addPolicy(PolicyManagerService policyManagementService, ResponsePayload responseMsg, - org.wso2.carbon.policy.mgt.common.Policy policy) { - try { - PolicyAdministratorPoint pap = policyManagementService.getPAP(); - pap.addPolicy(policy); - responseMsg.setStatusCode(HttpStatus.SC_CREATED); - responseMsg.setMessageFromServer("Policy has been added successfully."); - return Response.status(Response.Status.CREATED).entity(responseMsg).build(); - } catch (PolicyManagementException e) { - String msg = "Policy Management related exception"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - @GET - @Produces({MediaType.APPLICATION_JSON}) - public Response getAllPolicies() { - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - List policies; - try { - PolicyAdministratorPoint policyAdministratorPoint = policyManagementService.getPAP(); - policies = policyAdministratorPoint.getPolicies(); - } catch (PolicyManagementException e) { - String msg = "Policy Management related exception"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("Sending all retrieved device policies."); - responsePayload.setResponseContent(policies); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - @GET - @Produces({MediaType.APPLICATION_JSON}) - @Path("{id}") - public Response getPolicy(@PathParam("id") int policyId) { - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - final org.wso2.carbon.policy.mgt.common.Policy policy; - try { - PolicyAdministratorPoint policyAdministratorPoint = policyManagementService.getPAP(); - policy = policyAdministratorPoint.getPolicy(policyId); - } catch (PolicyManagementException e) { - String msg = "Policy Management related exception"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - if (policy == null){ - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_NOT_FOUND); - responsePayload.setMessageFromServer("Policy for ID " + policyId + " not found."); - return Response.status(Response.Status.NOT_FOUND).entity(responsePayload).build(); - } - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("Sending all retrieved device policies."); - responsePayload.setResponseContent(policy); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - @GET - @Path("count") - public Response getPolicyCount() { - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - try { - PolicyAdministratorPoint policyAdministratorPoint = policyManagementService.getPAP(); - Integer count = policyAdministratorPoint.getPolicyCount(); - return Response.status(Response.Status.OK).entity(count).build(); - } catch (PolicyManagementException e) { - String msg = "Policy Management related exception"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - @PUT - @Path("{id}") - public Response updatePolicy(PolicyWrapper policyWrapper, @PathParam("id") int policyId) { - - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - ResponsePayload responseMsg = new ResponsePayload(); - org.wso2.carbon.policy.mgt.common.Policy policy = new org.wso2.carbon.policy.mgt.common.Policy(); - policy.setPolicyName(policyWrapper.getPolicyName()); - policy.setId(policyId); - policy.setProfileId(policyWrapper.getProfileId()); - policy.setDescription(policyWrapper.getDescription()); - policy.setProfile(MDMUtil.convertProfile(policyWrapper.getProfile())); - policy.setOwnershipType(policyWrapper.getOwnershipType()); - policy.setRoles(policyWrapper.getRoles()); - policy.setUsers(policyWrapper.getUsers()); - policy.setTenantId(policyWrapper.getTenantId()); - policy.setCompliance(policyWrapper.getCompliance()); - - try { - PolicyAdministratorPoint pap = policyManagementService.getPAP(); - pap.updatePolicy(policy); - responseMsg.setStatusCode(HttpStatus.SC_CREATED); - responseMsg.setMessageFromServer("Policy has been updated successfully."); - return Response.status(Response.Status.CREATED).entity(responseMsg).build(); - } catch (PolicyManagementException e) { - String msg = "Policy Management related exception in policy update."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - @PUT - @Path("priorities") - @Consumes({MediaType.APPLICATION_JSON}) - @Produces({MediaType.APPLICATION_JSON}) - public Response updatePolicyPriorities(List priorityUpdatedPolicies) { - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - List policiesToUpdate = - new ArrayList<>(priorityUpdatedPolicies.size()); - int i; - for (i = 0; i < priorityUpdatedPolicies.size(); i++) { - org.wso2.carbon.policy.mgt.common.Policy policyObj = new org.wso2.carbon.policy.mgt.common.Policy(); - policyObj.setId(priorityUpdatedPolicies.get(i).getId()); - policyObj.setPriorityId(priorityUpdatedPolicies.get(i).getPriority()); - policiesToUpdate.add(policyObj); - } - boolean policiesUpdated; - try { - PolicyAdministratorPoint pap = policyManagementService.getPAP(); - policiesUpdated = pap.updatePolicyPriorities(policiesToUpdate); - } catch (PolicyManagementException e) { - String msg = "Exception in updating policy priorities."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - ResponsePayload responsePayload = new ResponsePayload(); - if (policiesUpdated) { - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("Policy Priorities successfully updated."); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } else { - responsePayload.setStatusCode(HttpStatus.SC_BAD_REQUEST); - responsePayload.setMessageFromServer("Policy priorities did not update. Bad Request."); - return Response.status(Response.Status.BAD_REQUEST).entity(responsePayload).build(); - } - } - - @POST - @Path("bulk-remove") - @Consumes("application/json") - @Produces("application/json") - public Response bulkRemovePolicy(List policyIds) { - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - boolean policyDeleted = true; - try { - PolicyAdministratorPoint pap = policyManagementService.getPAP(); - for(int i : policyIds) { - org.wso2.carbon.policy.mgt.common.Policy policy = pap.getPolicy(i); - if(!pap.deletePolicy(policy)){ - policyDeleted = false; - } - } - } catch (PolicyManagementException e) { - String msg = "Exception in deleting policies."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - ResponsePayload responsePayload = new ResponsePayload(); - if (policyDeleted) { - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("Policies have been successfully deleted."); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } else { - responsePayload.setStatusCode(HttpStatus.SC_BAD_REQUEST); - responsePayload.setMessageFromServer("Policy does not exist."); - return Response.status(Response.Status.BAD_REQUEST).entity(responsePayload).build(); - } - } - - @PUT - @Produces("application/json") - @Path("activate") - public Response activatePolicy(List policyIds) { - try { - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - PolicyAdministratorPoint pap = policyManagementService.getPAP(); - for(int i : policyIds) { - pap.activatePolicy(i); - } - } catch (PolicyManagementException e) { - String msg = "Exception in activating policies."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("Selected policies have been successfully activated."); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - @PUT - @Produces("application/json") - @Path("inactivate") - public Response inactivatePolicy(List policyIds) throws MDMAPIException { - - try { - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - PolicyAdministratorPoint pap = policyManagementService.getPAP(); - for(int i : policyIds) { - pap.inactivatePolicy(i); - } - } catch (PolicyManagementException e) { - String msg = "Exception in inactivating policies."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("Selected policies have been successfully inactivated."); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - @PUT - @Produces("application/json") - @Path("apply-changes") - public Response applyChanges() { - - try { - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - PolicyAdministratorPoint pap = policyManagementService.getPAP(); - pap.publishChanges(); - - - } catch (PolicyManagementException e) { - String msg = "Exception in applying changes."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("Changes have been successfully updated."); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - @GET - @Path("start-task/{milliseconds}") - public Response startTaskService(@PathParam("milliseconds") int monitoringFrequency) { - - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - try { - TaskScheduleService taskScheduleService = policyManagementService.getTaskScheduleService(); - taskScheduleService.startTask(monitoringFrequency); - - - } catch (PolicyMonitoringTaskException e) { - String msg = "Policy Management related exception."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("Policy monitoring service started successfully."); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - @GET - @Path("update-task/{milliseconds}") - public Response updateTaskService(@PathParam("milliseconds") int monitoringFrequency) { - - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - try { - TaskScheduleService taskScheduleService = policyManagementService.getTaskScheduleService(); - taskScheduleService.updateTask(monitoringFrequency); - - } catch (PolicyMonitoringTaskException e) { - String msg = "Policy Management related exception."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("Policy monitoring service updated successfully."); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - @GET - @Path("stop-task") - public Response stopTaskService() { - - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - try { - TaskScheduleService taskScheduleService = policyManagementService.getTaskScheduleService(); - taskScheduleService.stopTask(); - - } catch (PolicyMonitoringTaskException e) { - String msg = "Policy Management related exception."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("Policy monitoring service stopped successfully."); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - @GET - @Path("{type}/{id}") - public Response getComplianceDataOfDevice(@PathParam("type") String type, @PathParam("id") String id) { - try { - DeviceIdentifier deviceIdentifier = DeviceMgtAPIUtils.instantiateDeviceIdentifier(type, id); - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - ComplianceData complianceData = policyManagementService.getDeviceCompliance(deviceIdentifier); - return Response.status(Response.Status.OK).entity(complianceData).build(); - } catch (PolicyComplianceException e) { - String msg = "Error occurred while getting the compliance data."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - @GET - @Path("{type}/{id}/active-policy") - public Response getDeviceActivePolicy(@PathParam("type") String type, - @PathParam("id") String id) { - try { - DeviceIdentifier deviceIdentifier = DeviceMgtAPIUtils.instantiateDeviceIdentifier(type, id); - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - org.wso2.carbon.policy.mgt.common.Policy policy = policyManagementService - .getAppliedPolicyToDevice(deviceIdentifier); - return Response.status(Response.Status.OK).entity(policy).build(); - } catch (PolicyManagementException e) { - String msg = "Error occurred while getting the current policy."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Profile.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Profile.java deleted file mode 100644 index f96e38c02e..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Profile.java +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.wso2.carbon.mdm.api; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.mdm.api.util.DeviceMgtAPIUtils; -import org.wso2.carbon.mdm.api.util.ResponsePayload; -import org.wso2.carbon.policy.mgt.common.PolicyAdministratorPoint; -import org.wso2.carbon.policy.mgt.common.PolicyManagementException; -import org.wso2.carbon.policy.mgt.core.PolicyManagerService; - -import javax.ws.rs.DELETE; -import javax.ws.rs.POST; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.core.Response; - -@SuppressWarnings("NonJaxWsWebServices") -public class Profile { - private static Log log = LogFactory.getLog(Profile.class); - - @POST - public Response addProfile(org.wso2.carbon.policy.mgt.common.Profile profile) { - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - try { - PolicyAdministratorPoint pap = policyManagementService.getPAP(); - profile = pap.addProfile(profile); - return Response.status(Response.Status.OK).entity(profile).build(); - } catch (PolicyManagementException e) { - String msg = "Policy Management related exception"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - @POST - @Path("{id}") - public Response updateProfile(org.wso2.carbon.policy.mgt.common.Profile profile, - @PathParam("id") String profileId) { - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - ResponsePayload responseMsg = new ResponsePayload(); - try { - PolicyAdministratorPoint pap = policyManagementService.getPAP(); - pap.updateProfile(profile); - responseMsg.setMessageFromServer("Profile has been updated successfully."); - return Response.status(Response.Status.OK).entity(responseMsg).build(); - } catch (PolicyManagementException e) { - String msg = "Policy Management related exception"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - @DELETE - @Path("{id}") - public Response deleteProfile(@PathParam("id") int profileId) { - PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService(); - ResponsePayload responseMsg = new ResponsePayload(); - try { - PolicyAdministratorPoint pap = policyManagementService.getPAP(); - org.wso2.carbon.policy.mgt.common.Profile profile = pap.getProfile(profileId); - pap.deleteProfile(profile); - responseMsg.setMessageFromServer("Profile has been deleted successfully."); - return Response.status(Response.Status.OK).entity(responseMsg).build(); - } catch (PolicyManagementException e) { - String msg = "Policy Management related exception"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Role.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Role.java deleted file mode 100644 index d0e434c34f..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/Role.java +++ /dev/null @@ -1,440 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.api; - -import org.apache.commons.httpclient.HttpStatus; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.CarbonConstants; -import org.wso2.carbon.base.MultitenantConstants; -import org.wso2.carbon.mdm.api.common.MDMAPIException; -import org.wso2.carbon.mdm.api.util.DeviceMgtAPIUtils; -import org.wso2.carbon.mdm.api.util.ResponsePayload; -import org.wso2.carbon.mdm.beans.RoleWrapper; -import org.wso2.carbon.mdm.util.SetReferenceTransformer; -import org.wso2.carbon.user.api.AuthorizationManager; -import org.wso2.carbon.user.api.Permission; -import org.wso2.carbon.user.api.UserRealm; -import org.wso2.carbon.user.api.UserStoreException; -import org.wso2.carbon.user.api.UserStoreManager; -import org.wso2.carbon.user.core.common.AbstractUserStoreManager; -import org.wso2.carbon.user.mgt.UserRealmProxy; -import org.wso2.carbon.user.mgt.common.UIPermissionNode; -import org.wso2.carbon.user.mgt.common.UserAdminException; - -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -@SuppressWarnings("NonJaxWsWebServices") -public class Role { - - private static Log log = LogFactory.getLog(Role.class); - - /** - * Get user roles (except all internal roles) from system. - * - * @return A list of users - */ - @GET - @Produces({MediaType.APPLICATION_JSON}) - public Response getRoles() { - List filteredRoles; - try { - filteredRoles = getRolesFromUserStore(); - } catch (MDMAPIException e) { - log.error(e.getErrorMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getErrorMessage()).build(); - } - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("All user roles were successfully retrieved."); - responsePayload.setResponseContent(filteredRoles); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - /** - * Get user roles by user store(except all internal roles) from system. - * - * @return A list of users - */ - @GET - @Path("{userStore}") - @Produces({MediaType.APPLICATION_JSON}) - public Response getRoles(@PathParam("userStore") String userStore) { - String[] roles; - try { - AbstractUserStoreManager abstractUserStoreManager = - (AbstractUserStoreManager) DeviceMgtAPIUtils.getUserStoreManager(); - if (log.isDebugEnabled()) { - log.debug("Getting the list of user roles"); - } - roles = abstractUserStoreManager.getRoleNames(userStore + "/*", -1, false, true, true); - - } catch (UserStoreException | MDMAPIException e) { - String msg = "Error occurred while retrieving the list of user roles."; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - // removing all internal roles and roles created for Service-providers - List filteredRoles = new ArrayList<>(); - for (String role : roles) { - if (!(role.startsWith("Internal/") || role.startsWith("Application/"))) { - filteredRoles.add(role); - } - } - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("All user roles were successfully retrieved."); - responsePayload.setResponseContent(filteredRoles); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - /** - * Get user roles by providing a filtering criteria(except all internal roles & system roles) from system. - * - * @return A list of users - */ - @GET - @Path("search") - @Produces({MediaType.APPLICATION_JSON}) - public Response getMatchingRoles(@QueryParam("filter") String filter) { - String[] roles; - try { - AbstractUserStoreManager abstractUserStoreManager = - (AbstractUserStoreManager) DeviceMgtAPIUtils.getUserStoreManager(); - if (log.isDebugEnabled()) { - log.debug("Getting the list of user roles using filter : " + filter); - } - roles = abstractUserStoreManager.getRoleNames("*" + filter + "*", -1, true, true, true); - - } catch (UserStoreException | MDMAPIException e) { - String msg = "Error occurred while retrieving the list of user roles using the filter : " + filter; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - // removing all internal roles and roles created for Service-providers - List filteredRoles = new ArrayList<>(); - for (String role : roles) { - if (!(role.startsWith("Internal/") || role.startsWith("Application/"))) { - filteredRoles.add(role); - } - } - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("All matching user roles were successfully retrieved."); - responsePayload.setResponseContent(filteredRoles); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - /** - * Get role permissions. - * - * @return list of permissions - */ - @GET - @Path("permissions") - @Produces({MediaType.APPLICATION_JSON}) - public Response getPermissions(@QueryParam("rolename") String roleName) { - try { - final UserRealm userRealm = DeviceMgtAPIUtils.getUserRealm(); - org.wso2.carbon.user.core.UserRealm userRealmCore = null; - final UIPermissionNode rolePermissions; - if (userRealm instanceof org.wso2.carbon.user.core.UserRealm) { - userRealmCore = (org.wso2.carbon.user.core.UserRealm) userRealm; - } - final UserRealmProxy userRealmProxy = new UserRealmProxy(userRealmCore); - rolePermissions = getUIPermissionNode(roleName, userRealmProxy); - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("All permissions retrieved"); - responsePayload.setResponseContent(rolePermissions); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } catch (UserAdminException | MDMAPIException e) { - String msg = "Error occurred while retrieving the user role"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - /** - * Get user role of the system - * - * @return user role - */ - @GET - @Path("role") - @Produces({MediaType.APPLICATION_JSON}) - public Response getRole(@QueryParam("rolename") String roleName) { - RoleWrapper roleWrapper = new RoleWrapper(); - try { - final UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - final UserRealm userRealm = DeviceMgtAPIUtils.getUserRealm(); - org.wso2.carbon.user.core.UserRealm userRealmCore = null; - if (userRealm instanceof org.wso2.carbon.user.core.UserRealm) { - userRealmCore = (org.wso2.carbon.user.core.UserRealm) userRealm; - } - - final UserRealmProxy userRealmProxy = new UserRealmProxy(userRealmCore); - if (log.isDebugEnabled()) { - log.debug("Getting the list of user roles"); - } - if (userStoreManager.isExistingRole(roleName)) { - roleWrapper.setRoleName(roleName); - roleWrapper.setUsers(userStoreManager.getUserListOfRole(roleName)); - // Get the permission nodes and hand picking only device management and login perms - final UIPermissionNode rolePermissions = getUIPermissionNode(roleName, userRealmProxy); - ArrayList permList = new ArrayList<>(); - iteratePermissions(rolePermissions, permList); - roleWrapper.setPermissionList(rolePermissions); - String[] permListAr = new String[permList.size()]; - roleWrapper.setPermissions(permList.toArray(permListAr)); - } - } catch (UserStoreException | UserAdminException | MDMAPIException e) { - String msg = "Error occurred while retrieving the user role"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("All user roles were successfully retrieved."); - responsePayload.setResponseContent(roleWrapper); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - private UIPermissionNode getUIPermissionNode(String roleName, UserRealmProxy userRealmProxy) - throws UserAdminException { - final UIPermissionNode rolePermissions = - userRealmProxy.getRolePermissions(roleName, MultitenantConstants.SUPER_TENANT_ID); - UIPermissionNode[] deviceMgtPermissions = new UIPermissionNode[2]; - - for (UIPermissionNode permissionNode : rolePermissions.getNodeList()) { - if (permissionNode.getResourcePath().equals("/permission/admin")) { - for (UIPermissionNode node : permissionNode.getNodeList()) { - if (node.getResourcePath().equals("/permission/admin/device-mgt")) { - deviceMgtPermissions[0] = node; - } else if (node.getResourcePath().equals("/permission/admin/login")) { - deviceMgtPermissions[1] = node; - } - } - } - } - rolePermissions.setNodeList(deviceMgtPermissions); - return rolePermissions; - } - - /** - * API is used to persist a new Role - * - * @param roleWrapper for role - * @return response - */ - @POST - @Produces({MediaType.APPLICATION_JSON}) - public Response addRole(RoleWrapper roleWrapper) { - try { - UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - if (log.isDebugEnabled()) { - log.debug("Persisting the role to user store"); - } - Permission[] permissions = null; - if (roleWrapper.getPermissions() != null && roleWrapper.getPermissions().length > 0) { - permissions = new Permission[roleWrapper.getPermissions().length]; - - for (int i = 0; i < permissions.length; i++) { - String permission = roleWrapper.getPermissions()[i]; - permissions[i] = new Permission(permission, CarbonConstants.UI_PERMISSION_ACTION); - } - } - userStoreManager.addRole(roleWrapper.getRoleName(), roleWrapper.getUsers(), permissions); - } catch (UserStoreException | MDMAPIException e) { - String msg = e.getMessage(); - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - return Response.status(Response.Status.OK).build(); - } - - /** - * API is used to update a role Role - * - * @param roleWrapper for role - * @return response - */ - @PUT - @Produces({MediaType.APPLICATION_JSON}) - public Response updateRole(@QueryParam("rolename") String roleName, RoleWrapper roleWrapper) { - String newRoleName = roleWrapper.getRoleName(); - try { - final UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - final AuthorizationManager authorizationManager = DeviceMgtAPIUtils.getAuthorizationManager(); - if (log.isDebugEnabled()) { - log.debug("Updating the role to user store"); - } - if (newRoleName != null && !roleName.equals(newRoleName)) { - userStoreManager.updateRoleName(roleName, newRoleName); - } - if (roleWrapper.getUsers() != null) { - SetReferenceTransformer transformer = new SetReferenceTransformer<>(); - transformer.transform(Arrays.asList(userStoreManager.getUserListOfRole(newRoleName)), - Arrays.asList(roleWrapper.getUsers())); - final String[] usersToAdd = transformer.getObjectsToAdd().toArray(new String[transformer - .getObjectsToAdd().size()]); - final String[] usersToDelete = transformer.getObjectsToRemove().toArray(new String[transformer - .getObjectsToRemove().size()]); - userStoreManager.updateUserListOfRole(newRoleName, usersToDelete, usersToAdd); - } - if (roleWrapper.getPermissions() != null) { - // Delete all authorizations for the current role before authorizing the permission tree - authorizationManager.clearRoleAuthorization(roleName); - if (roleWrapper.getPermissions().length > 0) { - for (int i = 0; i < roleWrapper.getPermissions().length; i++) { - String permission = roleWrapper.getPermissions()[i]; - authorizationManager.authorizeRole(roleName, permission, CarbonConstants.UI_PERMISSION_ACTION); - } - } - } - } catch (UserStoreException | MDMAPIException e) { - String msg = e.getMessage(); - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - return Response.status(Response.Status.OK).build(); - } - - /** - * API is used to delete a role and authorizations - * - * @param roleName to delete - * @return response - */ - @DELETE - @Produces({MediaType.APPLICATION_JSON}) - public Response deleteRole(@QueryParam("rolename") String roleName) { - try { - final UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - final AuthorizationManager authorizationManager = DeviceMgtAPIUtils.getAuthorizationManager(); - if (log.isDebugEnabled()) { - log.debug("Deleting the role in user store"); - } - userStoreManager.deleteRole(roleName); - // Delete all authorizations for the current role before deleting - authorizationManager.clearRoleAuthorization(roleName); - } catch (UserStoreException | MDMAPIException e) { - String msg = "Error occurred while deleting the role: " + roleName; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - return Response.status(Response.Status.OK).build(); - } - - /** - * API is used to update users of a role - * - * @param roleName to update - * @param userList of the users - * @return response - */ - @PUT - @Path("users") - @Produces({MediaType.APPLICATION_JSON}) - public Response updateUsers(@QueryParam("rolename") String roleName, List userList) { - try { - final UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - if (log.isDebugEnabled()) { - log.debug("Updating the users of a role"); - } - SetReferenceTransformer transformer = new SetReferenceTransformer<>(); - transformer.transform(Arrays.asList(userStoreManager.getUserListOfRole(roleName)), - userList); - final String[] usersToAdd = transformer.getObjectsToAdd().toArray(new String[transformer - .getObjectsToAdd().size()]); - final String[] usersToDelete = transformer.getObjectsToRemove().toArray(new String[transformer - .getObjectsToRemove().size()]); - - userStoreManager.updateUserListOfRole(roleName, usersToDelete, usersToAdd); - } catch (UserStoreException | MDMAPIException e) { - String msg = "Error occurred while saving the users of the role: " + roleName; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - return Response.status(Response.Status.OK).build(); - } - - private ArrayList iteratePermissions(UIPermissionNode uiPermissionNode, ArrayList list) { - for (UIPermissionNode permissionNode : uiPermissionNode.getNodeList()) { - list.add(permissionNode.getResourcePath()); - if (permissionNode.getNodeList() != null && permissionNode.getNodeList().length > 0) { - iteratePermissions(permissionNode, list); - } - } - return list; - } - - /** - * This method is used to retrieve the role count of the system. - * - * @return returns the count. - */ - @GET - @Path("count") - public Response getRoleCount() { - try { - List filteredRoles = getRolesFromUserStore(); - Integer count = filteredRoles.size(); - return Response.status(Response.Status.OK).entity(count).build(); - } catch (MDMAPIException e) { - log.error(e.getErrorMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getErrorMessage()).build(); - } - } - - private List getRolesFromUserStore() throws MDMAPIException { - UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - String[] roles; - try { - if (log.isDebugEnabled()) { - log.debug("Getting the list of user roles"); - } - roles = userStoreManager.getRoleNames(); - - } catch (UserStoreException e) { - String msg = "Error occurred while retrieving the list of user roles."; - throw new MDMAPIException(msg, e); - } - // removing all internal roles and roles created for Service-providers - List filteredRoles = new ArrayList<>(); - for (String role : roles) { - if (!(role.startsWith("Internal/") || role.startsWith("Application/"))) { - filteredRoles.add(role); - } - } - return filteredRoles; - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/User.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/User.java deleted file mode 100644 index bbfed9dad8..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/User.java +++ /dev/null @@ -1,757 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.api; - -import org.apache.commons.codec.binary.Base64; -import org.apache.commons.httpclient.HttpStatus; -import org.apache.commons.lang.StringUtils; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.context.CarbonContext; -import org.wso2.carbon.device.mgt.common.DeviceManagementException; -import org.wso2.carbon.device.mgt.common.PaginationRequest; -import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderService; -import org.wso2.carbon.device.mgt.core.service.EmailMetaInfo; -import org.wso2.carbon.mdm.api.common.MDMAPIException; -import org.wso2.carbon.mdm.api.util.CredentialManagementResponseBuilder; -import org.wso2.carbon.mdm.api.util.DeviceMgtAPIUtils; -import org.wso2.carbon.mdm.api.util.ResponsePayload; -import org.wso2.carbon.mdm.beans.UserCredentialWrapper; -import org.wso2.carbon.mdm.beans.UserWrapper; -import org.wso2.carbon.mdm.util.Constants; -import org.wso2.carbon.mdm.util.SetReferenceTransformer; -import org.wso2.carbon.user.api.UserStoreException; -import org.wso2.carbon.user.api.UserStoreManager; -import org.wso2.carbon.utils.multitenancy.MultitenantConstants; - -import javax.ws.rs.Consumes; -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; -import java.io.UnsupportedEncodingException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Properties; -import java.util.Random; -import java.util.TreeSet; - -/** - * This class represents the JAX-RS services of User related functionality. - */ -@SuppressWarnings("NonJaxWsWebServices") -public class User { - - private static final String ROLE_EVERYONE = "Internal/everyone"; - private static Log log = LogFactory.getLog(User.class); - - /** - * Method to add user to emm-user-store. - * - * @param userWrapper Wrapper object representing input json payload - * @return {Response} Status of the request wrapped inside Response object - */ - @POST - @Consumes({MediaType.APPLICATION_JSON}) - @Produces({MediaType.APPLICATION_JSON}) - public Response addUser(UserWrapper userWrapper) { - ResponsePayload responsePayload = new ResponsePayload(); - try { - UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - if (userStoreManager.isExistingUser(userWrapper.getUsername())) { - // if user already exists - if (log.isDebugEnabled()) { - log.debug("User by username: " + userWrapper.getUsername() + - " already exists. Therefore, request made to add user was refused."); - } - // returning response with bad request state - responsePayload.setStatusCode(HttpStatus.SC_CONFLICT); - responsePayload. - setMessageFromServer("User by username: " + userWrapper.getUsername() + - " already exists. Therefore, request made to add user was refused."); - return Response.status(Response.Status.CONFLICT).entity(responsePayload).build(); - } else { - String initialUserPassword = generateInitialUserPassword(); - Map defaultUserClaims = - buildDefaultUserClaims(userWrapper.getFirstname(), userWrapper.getLastname(), - userWrapper.getEmailAddress()); - // calling addUser method of carbon user api - userStoreManager.addUser(userWrapper.getUsername(), initialUserPassword, - userWrapper.getRoles(), defaultUserClaims, null); - // invite newly added user to enroll device - inviteNewlyAddedUserToEnrollDevice(userWrapper.getUsername(), initialUserPassword); - // Outputting debug message upon successful addition of user - if (log.isDebugEnabled()) { - log.debug("User by username: " + userWrapper.getUsername() + " was successfully added."); - } - // returning response with success state - responsePayload.setStatusCode(HttpStatus.SC_CREATED); - responsePayload.setMessageFromServer("User by username: " + userWrapper.getUsername() + - " was successfully added."); - return Response.status(Response.Status.CREATED).entity(responsePayload).build(); - } - } catch (UserStoreException | MDMAPIException e) { - String msg = "Exception in trying to add user by username: " + userWrapper.getUsername(); - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - /** - * Method to get user information from emm-user-store. - * - * @param username User-name of the user - * @return {Response} Status of the request wrapped inside Response object. - */ - @GET - @Path("view") - @Produces({MediaType.APPLICATION_JSON}) - public Response getUser(@QueryParam("username") String username) { - ResponsePayload responsePayload = new ResponsePayload(); - try { - UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - if (userStoreManager.isExistingUser(username)) { - UserWrapper user = new UserWrapper(); - user.setUsername(username); - user.setEmailAddress(getClaimValue(username, Constants.USER_CLAIM_EMAIL_ADDRESS)); - user.setFirstname(getClaimValue(username, Constants.USER_CLAIM_FIRST_NAME)); - user.setLastname(getClaimValue(username, Constants.USER_CLAIM_LAST_NAME)); - // Outputting debug message upon successful retrieval of user - if (log.isDebugEnabled()) { - log.debug("User by username: " + username + " was found."); - } - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("User information was retrieved successfully."); - responsePayload.setResponseContent(user); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } else { - // Outputting debug message upon trying to remove non-existing user - if (log.isDebugEnabled()) { - log.debug("User by username: " + username + " does not exist."); - } - // returning response with bad request state - responsePayload.setStatusCode(HttpStatus.SC_BAD_REQUEST); - responsePayload.setMessageFromServer( - "User by username: " + username + " does not exist."); - return Response.status(Response.Status.BAD_REQUEST).entity(responsePayload).build(); - } - } catch (UserStoreException | MDMAPIException e) { - String msg = "Exception in trying to retrieve user by username: " + username; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - /** - * Update user in user store - * - * @param userWrapper Wrapper object representing input json payload - * @return {Response} Status of the request wrapped inside Response object. - */ - @PUT - @Consumes({MediaType.APPLICATION_JSON}) - @Produces({MediaType.APPLICATION_JSON}) - public Response updateUser(UserWrapper userWrapper, @QueryParam("username") String username) { - ResponsePayload responsePayload = new ResponsePayload(); - try { - UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - if (userStoreManager.isExistingUser(userWrapper.getUsername())) { - Map defaultUserClaims = - buildDefaultUserClaims(userWrapper.getFirstname(), userWrapper.getLastname(), - userWrapper.getEmailAddress()); - if (StringUtils.isNotEmpty(userWrapper.getPassword())) { - // Decoding Base64 encoded password - byte[] decodedBytes = Base64.decodeBase64(userWrapper.getPassword()); - userStoreManager.updateCredentialByAdmin(userWrapper.getUsername(), - new String(decodedBytes, "UTF-8")); - log.debug("User credential of username: " + userWrapper.getUsername() + " has been changed"); - } - List listofFilteredRoles = getFilteredRoles(userStoreManager, userWrapper.getUsername()); - final String[] existingRoles = listofFilteredRoles.toArray(new String[listofFilteredRoles.size()]); - - /* - Use the Set theory to find the roles to delete and roles to add - The difference of roles in existingRolesSet and newRolesSet needed to be deleted - new roles to add = newRolesSet - The intersection of roles in existingRolesSet and newRolesSet - */ - final TreeSet existingRolesSet = new TreeSet<>(); - Collections.addAll(existingRolesSet, existingRoles); - final TreeSet newRolesSet = new TreeSet<>(); - Collections.addAll(newRolesSet, userWrapper.getRoles()); - existingRolesSet.removeAll(newRolesSet); - // Now we have the roles to delete - String[] rolesToDelete = existingRolesSet.toArray(new String[existingRolesSet.size()]); - List roles = new ArrayList<>(Arrays.asList(rolesToDelete)); - roles.remove(ROLE_EVERYONE); - rolesToDelete = new String[0]; - // Clearing and re-initializing the set - existingRolesSet.clear(); - Collections.addAll(existingRolesSet, existingRoles); - newRolesSet.removeAll(existingRolesSet); - // Now we have the roles to add - String[] rolesToAdd = newRolesSet.toArray(new String[newRolesSet.size()]); - userStoreManager.updateRoleListOfUser(userWrapper.getUsername(), rolesToDelete, rolesToAdd); - userStoreManager.setUserClaimValues(userWrapper.getUsername(), defaultUserClaims, null); - // Outputting debug message upon successful addition of user - if (log.isDebugEnabled()) { - log.debug("User by username: " + userWrapper.getUsername() + " was successfully updated."); - } - // returning response with success state - responsePayload.setStatusCode(HttpStatus.SC_CREATED); - responsePayload.setMessageFromServer("User by username: " + userWrapper.getUsername() + - " was successfully updated."); - return Response.status(Response.Status.CREATED).entity(responsePayload).build(); - } else { - if (log.isDebugEnabled()) { - log.debug("User by username: " + userWrapper.getUsername() + - " doesn't exists. Therefore, request made to update user was refused."); - } - // returning response with bad request state - responsePayload.setStatusCode(HttpStatus.SC_CONFLICT); - responsePayload. - setMessageFromServer("User by username: " + userWrapper.getUsername() + - " doesn't exists. Therefore, request made to update user was refused."); - return Response.status(Response.Status.CONFLICT).entity(responsePayload).build(); - } - } catch (UserStoreException | UnsupportedEncodingException | MDMAPIException e) { - String msg = "Exception in trying to update user by username: " + userWrapper.getUsername(); - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - /** - * Private method to be used by addUser() to - * generate an initial user password for a user. - * This will be the password used by a user for his initial login to the system. - * - * @return {string} Initial User Password - */ - private String generateInitialUserPassword() { - int passwordLength = 6; - //defining the pool of characters to be used for initial password generation - String lowerCaseCharset = "abcdefghijklmnopqrstuvwxyz"; - String upperCaseCharset = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; - String numericCharset = "0123456789"; - Random randomGenerator = new Random(); - String totalCharset = lowerCaseCharset + upperCaseCharset + numericCharset; - int totalCharsetLength = totalCharset.length(); - StringBuilder initialUserPassword = new StringBuilder(); - for (int i = 0; i < passwordLength; i++) { - initialUserPassword - .append(totalCharset.charAt(randomGenerator.nextInt(totalCharsetLength))); - } - if (log.isDebugEnabled()) { - log.debug("Initial user password is created for new user: " + initialUserPassword); - } - return initialUserPassword.toString(); - } - - /** - * Method to build default user claims. - * - * @param firstname First name of the user - * @param lastname Last name of the user - * @param emailAddress Email address of the user - * @return {Object} Default user claims to be provided - */ - private Map buildDefaultUserClaims(String firstname, String lastname, String emailAddress) { - Map defaultUserClaims = new HashMap<>(); - defaultUserClaims.put(Constants.USER_CLAIM_FIRST_NAME, firstname); - defaultUserClaims.put(Constants.USER_CLAIM_LAST_NAME, lastname); - defaultUserClaims.put(Constants.USER_CLAIM_EMAIL_ADDRESS, emailAddress); - if (log.isDebugEnabled()) { - log.debug("Default claim map is created for new user: " + defaultUserClaims.toString()); - } - return defaultUserClaims; - } - - /** - * Method to remove user from emm-user-store. - * - * @param username Username of the user - * @return {Response} Status of the request wrapped inside Response object. - */ - @DELETE - @Produces({MediaType.APPLICATION_JSON}) - public Response removeUser(@QueryParam("username") String username) { - ResponsePayload responsePayload = new ResponsePayload(); - try { - UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - if (userStoreManager.isExistingUser(username)) { - // if user already exists, trying to remove user - userStoreManager.deleteUser(username); - // Outputting debug message upon successful removal of user - if (log.isDebugEnabled()) { - log.debug("User by username: " + username + " was successfully removed."); - } - // returning response with success state - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer( - "User by username: " + username + " was successfully removed."); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } else { - // Outputting debug message upon trying to remove non-existing user - if (log.isDebugEnabled()) { - log.debug("User by username: " + username + " does not exist for removal."); - } - // returning response with bad request state - responsePayload.setStatusCode(HttpStatus.SC_BAD_REQUEST); - responsePayload.setMessageFromServer( - "User by username: " + username + " does not exist for removal."); - return Response.status(Response.Status.BAD_REQUEST).entity(responsePayload).build(); - } - } catch (UserStoreException | MDMAPIException e) { - String msg = "Exception in trying to remove user by username: " + username; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - /** - * get all the roles except for the internal/xxx and application/xxx - * - * @param userStoreManager User Store Manager associated with the currently logged in user - * @param username Username of the currently logged in user - * @return the list of filtered roles - */ - private List getFilteredRoles(UserStoreManager userStoreManager, String username) { - String[] roleListOfUser = new String[0]; - try { - roleListOfUser = userStoreManager.getRoleListOfUser(username); - } catch (UserStoreException e) { - e.printStackTrace(); - } - List filteredRoles = new ArrayList<>(); - for (String role : roleListOfUser) { - if (!(role.startsWith("Internal/") || role.startsWith("Application/"))) { - filteredRoles.add(role); - } - } - return filteredRoles; - } - - /** - * Get user's roles by username - * - * @param username Username of the user - * @return {Response} Status of the request wrapped inside Response object. - */ - @GET - @Path("roles") - @Produces({MediaType.APPLICATION_JSON}) - public Response getRoles(@QueryParam("username") String username) { - ResponsePayload responsePayload = new ResponsePayload(); - try { - UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - if (userStoreManager.isExistingUser(username)) { - responsePayload.setResponseContent(Collections.singletonList(getFilteredRoles(userStoreManager, username))); - // Outputting debug message upon successful removal of user - if (log.isDebugEnabled()) { - log.debug("User by username: " + username + " was successfully removed."); - } - // returning response with success state - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer( - "User roles obtained for user " + username); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } else { - // Outputting debug message upon trying to remove non-existing user - if (log.isDebugEnabled()) { - log.debug("User by username: " + username + " does not exist for role retrieval."); - } - // returning response with bad request state - responsePayload.setStatusCode(HttpStatus.SC_BAD_REQUEST); - responsePayload.setMessageFromServer( - "User by username: " + username + " does not exist for role retrieval."); - return Response.status(Response.Status.BAD_REQUEST).entity(responsePayload).build(); - } - } catch (UserStoreException | MDMAPIException e) { - String msg = "Exception in trying to retrieve roles for user by username: " + username; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - /** - * Get the list of all users with all user-related info. - * - * @return A list of users - */ - @GET - @Produces({MediaType.APPLICATION_JSON}) - public Response getAllUsers() { - if (log.isDebugEnabled()) { - log.debug("Getting the list of users with all user-related information"); - } - List userList; - try { - UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - String[] users = userStoreManager.listUsers("*", -1); - userList = new ArrayList<>(users.length); - UserWrapper user; - for (String username : users) { - user = new UserWrapper(); - user.setUsername(username); - user.setEmailAddress(getClaimValue(username, Constants.USER_CLAIM_EMAIL_ADDRESS)); - user.setFirstname(getClaimValue(username, Constants.USER_CLAIM_FIRST_NAME)); - user.setLastname(getClaimValue(username, Constants.USER_CLAIM_LAST_NAME)); - userList.add(user); - } - } catch (UserStoreException | MDMAPIException e) { - String msg = "Error occurred while retrieving the list of users"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - int count; - count = userList.size(); - responsePayload.setMessageFromServer("All users were successfully retrieved. " + - "Obtained user count: " + count); - responsePayload.setResponseContent(userList); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - /** - * Get the list of all users with all user-related info. - * - * @return A list of users - */ - @GET - @Path("{filter}") - @Produces({MediaType.APPLICATION_JSON}) - public Response getMatchingUsers(@PathParam("filter") String filter) { - if (log.isDebugEnabled()) { - log.debug("Getting the list of users with all user-related information using the filter : " + filter); - } - List userList; - try { - UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - String[] users = userStoreManager.listUsers(filter + "*", -1); - userList = new ArrayList<>(users.length); - UserWrapper user; - for (String username : users) { - user = new UserWrapper(); - user.setUsername(username); - user.setEmailAddress(getClaimValue(username, Constants.USER_CLAIM_EMAIL_ADDRESS)); - user.setFirstname(getClaimValue(username, Constants.USER_CLAIM_FIRST_NAME)); - user.setLastname(getClaimValue(username, Constants.USER_CLAIM_LAST_NAME)); - userList.add(user); - } - } catch (UserStoreException | MDMAPIException e) { - String msg = "Error occurred while retrieving the list of users using the filter : " + filter; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - int count; - count = userList.size(); - responsePayload.setMessageFromServer("All users were successfully retrieved. " + - "Obtained user count: " + count); - responsePayload.setResponseContent(userList); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - /** - * Get the list of user names in the system. - * - * @return A list of user names. - */ - @GET - @Path("view-users") - public Response getAllUsersByUsername(@QueryParam("username") String userName) { - if (log.isDebugEnabled()) { - log.debug("Getting the list of users by name"); - } - List userList; - try { - UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - String[] users = userStoreManager.listUsers("*" + userName + "*", -1); - userList = new ArrayList<>(users.length); - UserWrapper user; - for (String username : users) { - user = new UserWrapper(); - user.setUsername(username); - user.setEmailAddress(getClaimValue(username, Constants.USER_CLAIM_EMAIL_ADDRESS)); - user.setFirstname(getClaimValue(username, Constants.USER_CLAIM_FIRST_NAME)); - user.setLastname(getClaimValue(username, Constants.USER_CLAIM_LAST_NAME)); - userList.add(user); - } - } catch (UserStoreException | MDMAPIException e) { - String msg = "Error occurred while retrieving the list of users"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - int count; - count = userList.size(); - responsePayload.setMessageFromServer("All users by username were successfully retrieved. " + - "Obtained user count: " + count); - responsePayload.setResponseContent(userList); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - /** - * Get the list of user names in the system. - * - * @return A list of user names. - */ - @GET - @Path("users-by-username") - public Response getAllUserNamesByUsername(@QueryParam("username") String userName) { - if (log.isDebugEnabled()) { - log.debug("Getting the list of users by name"); - } - List userList; - try { - UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - String[] users = userStoreManager.listUsers("*" + userName + "*", -1); - userList = new ArrayList<>(users.length); - Collections.addAll(userList, users); - } catch (UserStoreException | MDMAPIException e) { - String msg = "Error occurred while retrieving the list of users"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - int count; - count = userList.size(); - responsePayload.setMessageFromServer("All users by username were successfully retrieved. " + - "Obtained user count: " + count); - responsePayload.setResponseContent(userList); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - /** - * Gets a claim-value from user-store. - * - * @param username Username of the user - * @param claimUri required ClaimUri - * @return claim value - */ - private String getClaimValue(String username, String claimUri) throws MDMAPIException { - UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - try { - return userStoreManager.getUserClaimValue(username, claimUri, null); - } catch (UserStoreException e) { - throw new MDMAPIException("Error occurred while retrieving value assigned to the claim '" + - claimUri + "'", e); - } - } - - /** - * Method used to send an invitation email to a new user to enroll a device. - * - * @param username Username of the user - */ - private void inviteNewlyAddedUserToEnrollDevice(String username, String password) throws MDMAPIException { - if (log.isDebugEnabled()) { - log.debug("Sending invitation mail to user by username: " + username); - } - String tenantDomain = CarbonContext.getThreadLocalCarbonContext().getTenantDomain(); - if (MultitenantConstants.SUPER_TENANT_DOMAIN_NAME.equalsIgnoreCase(tenantDomain)) { - tenantDomain = ""; - } - if (!username.contains("/")) { - username = "/" + username; - } - String[] usernameBits = username.split("/"); - DeviceManagementProviderService deviceManagementProviderService = DeviceMgtAPIUtils.getDeviceManagementService(); - - Properties props = new Properties(); - props.setProperty("username", usernameBits[1]); - props.setProperty("domain-name", tenantDomain); - props.setProperty("first-name", getClaimValue(username, Constants.USER_CLAIM_FIRST_NAME)); - props.setProperty("password", password); - - String recipient = getClaimValue(username, Constants.USER_CLAIM_EMAIL_ADDRESS); - - EmailMetaInfo metaInfo = new EmailMetaInfo(recipient, props); - try { - deviceManagementProviderService.sendRegistrationEmail(metaInfo); - } catch (DeviceManagementException e) { - String msg = "Error occurred while sending registration email to user '" + username + "'"; - log.error(msg, e); - throw new MDMAPIException(msg, e); - } - } - - /** - * Method used to send an invitation email to a existing user to enroll a device. - * - * @param usernames Username list of the users to be invited - */ - @POST - @Path("email-invitation") - @Produces({MediaType.APPLICATION_JSON}) - public Response inviteExistingUsersToEnrollDevice(List usernames) { - if (log.isDebugEnabled()) { - log.debug("Sending enrollment invitation mail to existing user."); - } - DeviceManagementProviderService deviceManagementProviderService = DeviceMgtAPIUtils.getDeviceManagementService(); - try { - for (String username : usernames) { - String recipient = getClaimValue(username, Constants.USER_CLAIM_EMAIL_ADDRESS); - - Properties props = new Properties(); - props.setProperty("first-name", getClaimValue(username, Constants.USER_CLAIM_FIRST_NAME)); - props.setProperty("username", username); - - EmailMetaInfo metaInfo = new EmailMetaInfo(recipient, props); - deviceManagementProviderService.sendEnrolmentInvitation(metaInfo); - } - } catch (DeviceManagementException | MDMAPIException e) { - String msg = "Error occurred while inviting user to enrol their device"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - ResponsePayload responsePayload = new ResponsePayload(); - responsePayload.setStatusCode(HttpStatus.SC_OK); - responsePayload.setMessageFromServer("Email invitation was successfully sent to user."); - return Response.status(Response.Status.OK).entity(responsePayload).build(); - } - - /** - * Get a list of devices based on the username. - * - * @param username Username of the device owner - * @return A list of devices - */ - @GET - @Produces({MediaType.APPLICATION_JSON}) - @Path("devices") - public Response getAllDeviceOfUser(@QueryParam("username") String username, @QueryParam("start") int startIdx, - @QueryParam("length") int length) { - DeviceManagementProviderService dmService; - try { - dmService = DeviceMgtAPIUtils.getDeviceManagementService(); - if (length > 0) { - PaginationRequest request = new PaginationRequest(startIdx, length); - request.setOwner(username); - return Response.status(Response.Status.OK).entity(dmService.getDevicesOfUser(request)).build(); - } - return Response.status(Response.Status.OK).entity(dmService.getDevicesOfUser(username)).build(); - } catch (DeviceManagementException e) { - String msg = "Device management error"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - /** - * This method is used to retrieve the user count of the system. - * - * @return returns the count. - * @ - */ - @GET - @Path("count") - public Response getUserCount() { - try { - String[] users = DeviceMgtAPIUtils.getUserStoreManager().listUsers("*", -1); - Integer count = 0; - if (users != null) { - count = users.length; - } - return Response.status(Response.Status.OK).entity(count).build(); - } catch (UserStoreException | MDMAPIException e) { - String msg = - "Error occurred while retrieving the list of users that exist within the current tenant"; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - } - - /** - * API is used to update roles of a user - * - * @param username - * @param userList - * @return - * @ - */ - @PUT - @Path("{roleName}/users") - @Produces({MediaType.APPLICATION_JSON}) - public Response updateRoles(@PathParam("username") String username, List userList) { - try { - final UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - if (log.isDebugEnabled()) { - log.debug("Updating the roles of a user"); - } - SetReferenceTransformer transformer = new SetReferenceTransformer<>(); - transformer.transform(Arrays.asList(userStoreManager.getRoleListOfUser(username)), - userList); - final String[] rolesToAdd = transformer.getObjectsToAdd().toArray(new String[transformer.getObjectsToAdd().size()]); - final String[] rolesToDelete = transformer.getObjectsToRemove().toArray(new String[transformer.getObjectsToRemove().size()]); - - userStoreManager.updateRoleListOfUser(username, rolesToDelete, rolesToAdd); - } catch (UserStoreException | MDMAPIException e) { - String msg = "Error occurred while saving the roles for user: " + username; - log.error(msg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build(); - } - return Response.status(Response.Status.OK).build(); - } - - /** - * Method to change the user password. - * - * @param credentials Wrapper object representing user credentials. - * @return {Response} Status of the request wrapped inside Response object. - * @ - */ - @POST - @Path("change-password") - @Consumes({MediaType.APPLICATION_JSON}) - @Produces({MediaType.APPLICATION_JSON}) - public Response resetPassword(UserCredentialWrapper credentials) { - return CredentialManagementResponseBuilder.buildChangePasswordResponse(credentials); - } - - /** - * Method to change the user password. - * - * @param credentials Wrapper object representing user credentials. - * @return {Response} Status of the request wrapped inside Response object. - * @ - */ - @POST - @Path("reset-password") - @Consumes({MediaType.APPLICATION_JSON}) - @Produces({MediaType.APPLICATION_JSON}) - public Response resetPasswordByAdmin(UserCredentialWrapper credentials) { - return CredentialManagementResponseBuilder.buildResetPasswordResponse(credentials); - } - -} \ No newline at end of file diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/common/ErrorHandler.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/common/ErrorHandler.java deleted file mode 100644 index da8825b177..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/common/ErrorHandler.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.wso2.carbon.mdm.api.common; - -import javax.ws.rs.Produces; -import javax.ws.rs.core.Response; -import javax.ws.rs.ext.ExceptionMapper; - -@Produces({ "application/json", "application/xml" }) -public class ErrorHandler implements ExceptionMapper { - - public Response toResponse(MDMAPIException exception) { - ErrorMessage errorMessage = new ErrorMessage(); - errorMessage.setErrorMessage(exception.getErrorMessage()); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(errorMessage).build(); - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/common/ErrorMessage.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/common/ErrorMessage.java deleted file mode 100644 index 7dbe395532..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/common/ErrorMessage.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.wso2.carbon.mdm.api.common; - - -public class ErrorMessage { - - private String errorMessage; - private String errorCode; - - public String getErrorMessage() { - return errorMessage; - } - - public void setErrorMessage(String errorMessage) { - this.errorMessage = errorMessage; - } - - public String getErrorCode() { - return errorCode; - } - - public void setErrorCode(String errorCode) { - this.errorCode = errorCode; - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/common/MDMAPIException.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/common/MDMAPIException.java deleted file mode 100644 index 4139e56f46..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/common/MDMAPIException.java +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.api.common; - -/** - * Custom exception class for handling CDM API related exceptions. - */ -public class MDMAPIException extends Exception { - - private static final long serialVersionUID = 7950151650447893900L; - private String errorMessage; - - public String getErrorMessage() { - return errorMessage; - } - - public void setErrorMessage(String errorMessage) { - this.errorMessage = errorMessage; - } - - public MDMAPIException(String msg, Exception e) { - super(msg, e); - setErrorMessage(msg); - } - - public MDMAPIException(String msg, Throwable cause) { - super(msg, cause); - setErrorMessage(msg); - } - - public MDMAPIException(String msg) { - super(msg); - setErrorMessage(msg); - } - - public MDMAPIException() { - super(); - } - - public MDMAPIException(Throwable cause) { - super(cause); - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/context/DeviceOperationContext.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/context/DeviceOperationContext.java deleted file mode 100644 index aef30c70f2..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/context/DeviceOperationContext.java +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.api.context; - -import org.wso2.carbon.device.mgt.common.DeviceIdentifier; -import org.wso2.carbon.device.mgt.common.operation.mgt.Operation; - -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import java.util.List; - -/** - * Model object of DeviceOperation. - */ -@XmlRootElement -public class DeviceOperationContext { - - private List devices; - private Operation operation; - - @XmlElement - public List getDevices() { - return devices; - } - - public void setDevices(List devices) { - this.devices = devices; - } - - @XmlElement - public Operation getOperation() { - return operation; - } - - public void setOperation(Operation operation) { - this.operation = operation; - } -} \ No newline at end of file diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/CredentialManagementResponseBuilder.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/CredentialManagementResponseBuilder.java deleted file mode 100644 index 94f766f551..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/CredentialManagementResponseBuilder.java +++ /dev/null @@ -1,106 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.api.util; - -import org.apache.commons.codec.binary.Base64; -import org.apache.commons.httpclient.HttpStatus; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.mdm.api.common.MDMAPIException; -import org.wso2.carbon.mdm.beans.UserCredentialWrapper; -import org.wso2.carbon.user.api.UserStoreException; -import org.wso2.carbon.user.api.UserStoreManager; - -import javax.ws.rs.core.Response; -import java.io.UnsupportedEncodingException; - -/** - * This class builds Credential modification related Responses - */ -public class CredentialManagementResponseBuilder { - - private static Log log = LogFactory.getLog(CredentialManagementResponseBuilder.class); - - /** - * Builds the response to change the password of a user - * @param credentials - User credentials - * @return Response Object - */ - public static Response buildChangePasswordResponse(UserCredentialWrapper credentials) { - ResponsePayload responsePayload = new ResponsePayload(); - - try { - UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - byte[] decodedNewPassword = Base64.decodeBase64(credentials.getNewPassword()); - byte[] decodedOldPassword = Base64.decodeBase64(credentials.getOldPassword()); - userStoreManager.updateCredential(credentials.getUsername(), new String( - decodedNewPassword, "UTF-8"), new String(decodedOldPassword, "UTF-8")); - responsePayload.setStatusCode(HttpStatus.SC_CREATED); - responsePayload.setMessageFromServer("User password by username: " + credentials.getUsername() + - " was successfully changed."); - return Response.status(Response.Status.CREATED).entity(responsePayload).build(); - } catch (UserStoreException e) { - log.error(e.getMessage(), e); - responsePayload.setStatusCode(HttpStatus.SC_BAD_REQUEST); - responsePayload.setMessageFromServer("Old password does not match."); - return Response.status(Response.Status.BAD_REQUEST).entity(responsePayload).build(); - } catch (UnsupportedEncodingException e) { - String errorMsg = "Could not change the password of the user: " + credentials.getUsername() + - ". The Character Encoding is not supported."; - log.error(errorMsg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(errorMsg).build(); - } catch (MDMAPIException e) { - log.error(e.getErrorMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getErrorMessage()).build(); - } - } - - /** - * Builds the response to reset the password of a user - * @param credentials - User credentials - * @return Response Object - */ - public static Response buildResetPasswordResponse(UserCredentialWrapper credentials) { - ResponsePayload responsePayload = new ResponsePayload(); - try { - UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager(); - byte[] decodedNewPassword = Base64.decodeBase64(credentials.getNewPassword()); - userStoreManager.updateCredentialByAdmin(credentials.getUsername(), new String( - decodedNewPassword, "UTF-8")); - responsePayload.setStatusCode(HttpStatus.SC_CREATED); - responsePayload.setMessageFromServer("User password by username: " + credentials.getUsername() + - " was successfully changed."); - return Response.status(Response.Status.CREATED).entity(responsePayload).build(); - } catch (UserStoreException e) { - log.error(e.getMessage(), e); - responsePayload.setStatusCode(HttpStatus.SC_BAD_REQUEST); - responsePayload.setMessageFromServer("Could not change the password."); - return Response.status(Response.Status.BAD_REQUEST).entity(responsePayload).build(); - } catch (UnsupportedEncodingException e) { - String errorMsg = "Could not change the password of the user: " + credentials.getUsername() + - ". The Character Encoding is not supported."; - log.error(errorMsg, e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(errorMsg).build(); - } catch (MDMAPIException e) { - log.error(e.getErrorMessage(), e); - return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getErrorMessage()).build(); - } - } - -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/DeviceMgtAPIUtils.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/DeviceMgtAPIUtils.java deleted file mode 100644 index d7cb8f940f..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/DeviceMgtAPIUtils.java +++ /dev/null @@ -1,322 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.api.util; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.wso2.carbon.certificate.mgt.core.service.CertificateManagementService; -import org.wso2.carbon.context.CarbonContext; -import org.wso2.carbon.context.PrivilegedCarbonContext; -import org.wso2.carbon.device.mgt.common.DeviceIdentifier; -import org.wso2.carbon.device.mgt.common.PaginationResult; -import org.wso2.carbon.device.mgt.common.configuration.mgt.ConfigurationEntry; -import org.wso2.carbon.device.mgt.common.configuration.mgt.TenantConfiguration; -import org.wso2.carbon.device.mgt.common.configuration.mgt.TenantConfigurationManagementService; -import org.wso2.carbon.device.mgt.common.notification.mgt.NotificationManagementService; -import org.wso2.carbon.device.mgt.core.app.mgt.ApplicationManagementProviderService; -import org.wso2.carbon.device.mgt.core.device.details.mgt.DeviceInformationManager; -import org.wso2.carbon.device.mgt.core.search.mgt.SearchManagerService; -import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderService; -import org.wso2.carbon.device.mgt.core.service.GroupManagementProviderService; -import org.wso2.carbon.mdm.api.common.MDMAPIException; -import org.wso2.carbon.policy.mgt.common.PolicyMonitoringTaskException; -import org.wso2.carbon.policy.mgt.core.PolicyManagerService; -import org.wso2.carbon.policy.mgt.core.task.TaskScheduleService; -import org.wso2.carbon.user.api.AuthorizationManager; -import org.wso2.carbon.user.api.UserRealm; -import org.wso2.carbon.user.api.UserStoreException; -import org.wso2.carbon.user.api.UserStoreManager; -import org.wso2.carbon.user.core.service.RealmService; - -import javax.ws.rs.core.MediaType; -import java.util.List; - -/** - * MDMAPIUtils class provides utility function used by CDM REST-API classes. - */ -public class DeviceMgtAPIUtils { - - public static final MediaType DEFAULT_CONTENT_TYPE = MediaType.APPLICATION_JSON_TYPE; - private static final String NOTIFIER_FREQUENCY = "notifierFrequency"; - private static Log log = LogFactory.getLog(DeviceMgtAPIUtils.class); - - public static int getNotifierFrequency(TenantConfiguration tenantConfiguration) { - List configEntryList = tenantConfiguration.getConfiguration(); - if (configEntryList != null && !configEntryList.isEmpty()) { - for(ConfigurationEntry entry : configEntryList) { - if (NOTIFIER_FREQUENCY.equals(entry.getName())) { - return Integer.parseInt((String) entry.getValue()); - } - } - } - return 0; - } - - public static void scheduleTaskService(int notifierFrequency) { - TaskScheduleService taskScheduleService; - try { - taskScheduleService = getPolicyManagementService().getTaskScheduleService(); - if (taskScheduleService.isTaskScheduled()) { - taskScheduleService.updateTask(notifierFrequency); - } else { - taskScheduleService.startTask(notifierFrequency); - } - } catch (PolicyMonitoringTaskException e) { - log.error("Exception occurred while starting the Task service.", e); - } - } - - public static DeviceManagementProviderService getDeviceManagementService() { - PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext(); - DeviceManagementProviderService deviceManagementProviderService = - (DeviceManagementProviderService) ctx.getOSGiService(DeviceManagementProviderService.class, null); - if (deviceManagementProviderService == null) { - String msg = "Device Management provider service has not initialized."; - log.error(msg); - throw new IllegalStateException(msg); - } - return deviceManagementProviderService; - } - - public static GroupManagementProviderService getGroupManagementProviderService() { - PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext(); - GroupManagementProviderService groupManagementProviderService = - (GroupManagementProviderService) ctx.getOSGiService(GroupManagementProviderService.class, null); - if (groupManagementProviderService == null) { - String msg = "Group Management service has not initialized."; - log.error(msg); - throw new IllegalStateException(msg); - } - return groupManagementProviderService; - } - - public static int getTenantId(String tenantDomain) throws MDMAPIException { - PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext(); - RealmService realmService = (RealmService) ctx.getOSGiService(RealmService.class, null); - try { - return realmService.getTenantManager().getTenantId(tenantDomain); - } catch (UserStoreException e) { - throw new MDMAPIException( - "Error obtaining tenant id from tenant domain " + tenantDomain); - } - } - - public static UserStoreManager getUserStoreManager() throws MDMAPIException { - RealmService realmService; - UserStoreManager userStoreManager; - try { - PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext(); - realmService = (RealmService) ctx.getOSGiService(RealmService.class, null); - if (realmService == null) { - String msg = "Realm service has not initialized."; - log.error(msg); - throw new IllegalStateException(msg); - } - int tenantId = ctx.getTenantId(); - userStoreManager = realmService.getTenantUserRealm(tenantId).getUserStoreManager(); - } catch (UserStoreException e) { - String msg = "Error occurred while retrieving current user store manager"; - log.error(msg, e); - throw new MDMAPIException(msg, e); - } - return userStoreManager; - } - - /** - * Getting the current tenant's user realm - * - * @return - * @throws MDMAPIException - */ - public static UserRealm getUserRealm() throws MDMAPIException { - RealmService realmService; - UserRealm realm; - try { - //PrivilegedCarbonContext.startTenantFlow(); - PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext(); - //ctx.setTenantDomain(MultitenantConstants.SUPER_TENANT_DOMAIN_NAME); - //ctx.setTenantId(MultitenantConstants.SUPER_TENANT_ID); - realmService = (RealmService) ctx.getOSGiService(RealmService.class, null); - - if (realmService == null) { - String msg = "Realm service not initialized"; - log.error(msg); - throw new MDMAPIException(msg); - } - int tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId(); - realm = realmService.getTenantUserRealm(tenantId); - } catch (UserStoreException e) { - String msg = "Error occurred while retrieving current user realm"; - log.error(msg, e); - throw new MDMAPIException(msg, e); - } finally { - //PrivilegedCarbonContext.endTenantFlow(); - } - return realm; - } - - public static AuthorizationManager getAuthorizationManager() throws MDMAPIException { - RealmService realmService; - AuthorizationManager authorizationManager; - try { - PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext(); - realmService = (RealmService) ctx.getOSGiService(RealmService.class, null); - if (realmService == null) { - String msg = "Realm service has not initialized."; - log.error(msg); - throw new IllegalStateException(msg); - } - int tenantId = ctx.getTenantId(); - authorizationManager = realmService.getTenantUserRealm(tenantId).getAuthorizationManager(); - } catch (UserStoreException e) { - String msg = "Error occurred while retrieving current Authorization manager."; - log.error(msg, e); - throw new MDMAPIException(msg, e); - } - return authorizationManager; - } - - /** - * This method is used to get the current tenant id. - * - * @return returns the tenant id. - */ - public static int getTenantId() { - return CarbonContext.getThreadLocalCarbonContext().getTenantId(); - } - - public static DeviceIdentifier instantiateDeviceIdentifier(String deviceType, String deviceId) { - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); - deviceIdentifier.setType(deviceType); - deviceIdentifier.setId(deviceId); - return deviceIdentifier; - } - - public static ApplicationManagementProviderService getAppManagementService() { - PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext(); - ApplicationManagementProviderService applicationManagementProviderService = - (ApplicationManagementProviderService) ctx.getOSGiService(ApplicationManagementProviderService.class, null); - if (applicationManagementProviderService == null) { - String msg = "Application management service has not initialized."; - log.error(msg); - throw new IllegalStateException(msg); - } - return applicationManagementProviderService; - } - - public static PolicyManagerService getPolicyManagementService() { - PolicyManagerService policyManagementService; - PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext(); - policyManagementService = - (PolicyManagerService) ctx.getOSGiService(PolicyManagerService.class, null); - if (policyManagementService == null) { - String msg = "Policy Management service not initialized."; - log.error(msg); - throw new IllegalStateException(msg); - } - return policyManagementService; - } - - public static TenantConfigurationManagementService getTenantConfigurationManagementService() { - PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext(); - TenantConfigurationManagementService tenantConfigurationManagementService = - (TenantConfigurationManagementService) ctx.getOSGiService(TenantConfigurationManagementService.class, null); - if (tenantConfigurationManagementService == null) { - String msg = "Tenant configuration Management service not initialized."; - log.error(msg); - throw new IllegalStateException(msg); - } - return tenantConfigurationManagementService; - } - - public static NotificationManagementService getNotificationManagementService() { - NotificationManagementService notificationManagementService; - PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext(); - notificationManagementService = (NotificationManagementService) ctx.getOSGiService( - NotificationManagementService.class, null); - if (notificationManagementService == null) { - String msg = "Notification Management service not initialized."; - log.error(msg); - throw new IllegalStateException(msg); - } - return notificationManagementService; - } - - public static PaginationResult getPagingResponse(int recordsTotal, int recordsFiltered, int draw, List data) { - PaginationResult pagingResponse = new PaginationResult(); - pagingResponse.setRecordsTotal(recordsTotal); - pagingResponse.setRecordsFiltered(recordsFiltered); - pagingResponse.setDraw(draw); - pagingResponse.setData(data); - return pagingResponse; - } - - public static CertificateManagementService getCertificateManagementService() { - - PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext(); - CertificateManagementService certificateManagementService = (CertificateManagementService) - ctx.getOSGiService(CertificateManagementService.class, null); - - if (certificateManagementService == null) { - String msg = "Certificate Management service not initialized."; - log.error(msg); - throw new IllegalStateException(msg); - } - - return certificateManagementService; - } - - - public static MediaType getResponseMediaType(String acceptHeader) { - MediaType responseMediaType; - if (acceptHeader == null || MediaType.WILDCARD.equals(acceptHeader)) { - responseMediaType = DEFAULT_CONTENT_TYPE; - } else { - responseMediaType = MediaType.valueOf(acceptHeader); - } - - return responseMediaType; - } - - public static DeviceInformationManager getDeviceInformationManagerService() { - PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext(); - DeviceInformationManager deviceInformationManager = - (DeviceInformationManager) ctx.getOSGiService(DeviceInformationManager.class, null); - if (deviceInformationManager == null) { - String msg = "Device information Manager service has not initialized."; - log.error(msg); - throw new IllegalStateException(msg); - } - return deviceInformationManager; - } - - - - public static SearchManagerService getSearchManagerService() { - PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext(); - SearchManagerService searchManagerService = - (SearchManagerService) ctx.getOSGiService(SearchManagerService.class, null); - if (searchManagerService == null) { - String msg = "Device search manager service has not initialized."; - log.error(msg); - throw new IllegalStateException(msg); - } - return searchManagerService; - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/MDMAndroidOperationUtil.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/MDMAndroidOperationUtil.java deleted file mode 100644 index e50fc0bde6..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/MDMAndroidOperationUtil.java +++ /dev/null @@ -1,116 +0,0 @@ -/* - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.wso2.carbon.mdm.api.util; - -import org.wso2.carbon.device.mgt.common.operation.mgt.Operation; -import org.wso2.carbon.device.mgt.core.operation.mgt.ProfileOperation; -import org.wso2.carbon.mdm.api.common.MDMAPIException; -import org.wso2.carbon.mdm.beans.MobileApp; -import org.wso2.carbon.mdm.beans.android.WebApplication; - -/** - * - * This class contains the all the operations related to Android. - */ -public class MDMAndroidOperationUtil { - - /** - * This method is used to create Install Application operation. - * - * @param application MobileApp application - * @return operation - * @throws MDMAPIException - * - */ - public static Operation createInstallAppOperation(MobileApp application) throws MDMAPIException { - - ProfileOperation operation = new ProfileOperation(); - operation.setCode(MDMAppConstants.AndroidConstants.OPCODE_INSTALL_APPLICATION); - operation.setType(Operation.Type.PROFILE); - - switch (application.getType()) { - case ENTERPRISE: - org.wso2.carbon.mdm.beans.android.EnterpriseApplication enterpriseApplication = - new org.wso2.carbon.mdm.beans.android.EnterpriseApplication(); - enterpriseApplication.setType(application.getType().toString()); - enterpriseApplication.setUrl(application.getLocation()); - operation.setPayLoad(enterpriseApplication.toJSON()); - break; - case PUBLIC: - org.wso2.carbon.mdm.beans.android.AppStoreApplication appStoreApplication = - new org.wso2.carbon.mdm.beans.android.AppStoreApplication(); - appStoreApplication.setType(application.getType().toString()); - appStoreApplication.setAppIdentifier(application.getIdentifier()); - operation.setPayLoad(appStoreApplication.toJSON()); - break; - case WEBAPP: - WebApplication webApplication = new WebApplication(); - webApplication.setUrl(application.getLocation()); - webApplication.setName(application.getName()); - webApplication.setType(application.getType().toString()); - operation.setPayLoad(webApplication.toJSON()); - break; - default: - String errorMessage = "Invalid application type."; - throw new MDMAPIException(errorMessage); - } - return operation; - } - - /** - * This method is used to create Uninstall Application operation. - * @param application MobileApp application - * @return operation - * @throws MDMAPIException - */ - public static Operation createAppUninstallOperation(MobileApp application) throws MDMAPIException { - - ProfileOperation operation = new ProfileOperation(); - operation.setCode(MDMAppConstants.AndroidConstants.OPCODE_UNINSTALL_APPLICATION); - operation.setType(Operation.Type.PROFILE); - - switch (application.getType()) { - case ENTERPRISE: - org.wso2.carbon.mdm.beans.android.EnterpriseApplication enterpriseApplication = - new org.wso2.carbon.mdm.beans.android.EnterpriseApplication(); - enterpriseApplication.setType(application.getType().toString()); - enterpriseApplication.setAppIdentifier(application.getAppIdentifier()); - operation.setPayLoad(enterpriseApplication.toJSON()); - break; - case PUBLIC: - org.wso2.carbon.mdm.beans.android.AppStoreApplication appStoreApplication = - new org.wso2.carbon.mdm.beans.android.AppStoreApplication(); - appStoreApplication.setType(application.getType().toString()); - appStoreApplication.setAppIdentifier(application.getAppIdentifier()); - operation.setPayLoad(appStoreApplication.toJSON()); - break; - case WEBAPP: - WebApplication webApplication = new WebApplication(); - webApplication.setUrl(application.getLocation()); - webApplication.setName(application.getName()); - webApplication.setType(application.getType().toString()); - operation.setPayLoad(webApplication.toJSON()); - break; - default: - String errorMessage = "Invalid application type."; - throw new MDMAPIException(errorMessage); - } - return operation; - } - -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/MDMAppConstants.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/MDMAppConstants.java deleted file mode 100644 index a4a7f60714..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/MDMAppConstants.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.wso2.carbon.mdm.api.util; - -/** - * This class holds all the constants used for IOS and Android. - */ -public class MDMAppConstants { - - public class IOSConstants { - - private IOSConstants() { - throw new AssertionError(); - } - public static final String IS_REMOVE_APP = "isRemoveApp"; - public static final String IS_PREVENT_BACKUP = "isPreventBackup"; - public static final String I_TUNES_ID = "iTunesId"; - public static final String LABEL = "label"; - public static final String OPCODE_INSTALL_ENTERPRISE_APPLICATION = "INSTALL_ENTERPRISE_APPLICATION"; - public static final String OPCODE_INSTALL_STORE_APPLICATION = "INSTALL_STORE_APPLICATION"; - public static final String OPCODE_INSTALL_WEB_APPLICATION = "WEB_CLIP"; - public static final String OPCODE_REMOVE_APPLICATION = "REMOVE_APPLICATION"; - } - - public class AndroidConstants { - - private AndroidConstants() { - throw new AssertionError(); - } - public static final String OPCODE_INSTALL_APPLICATION = "INSTALL_APPLICATION"; - public static final String OPCODE_UNINSTALL_APPLICATION = "UNINSTALL_APPLICATION"; - } - - public class RegistryConstants { - - private RegistryConstants() { - throw new AssertionError(); - } - public static final String GENERAL_CONFIG_RESOURCE_PATH = "general"; - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/MDMIOSOperationUtil.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/MDMIOSOperationUtil.java deleted file mode 100644 index 261555d335..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/MDMIOSOperationUtil.java +++ /dev/null @@ -1,106 +0,0 @@ -/* - * - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.wso2.carbon.mdm.api.util; - -import org.wso2.carbon.device.mgt.common.operation.mgt.Operation; -import org.wso2.carbon.device.mgt.core.operation.mgt.ProfileOperation; -import org.wso2.carbon.mdm.api.common.MDMAPIException; -import org.wso2.carbon.mdm.beans.MobileApp; -import org.wso2.carbon.mdm.beans.ios.WebClip; - -import java.util.Properties; - -/** - * This class contains the all the operations related to IOS. - */ -public class MDMIOSOperationUtil { - - /** - * This method is used to create Install Application operation. - * - * @param application MobileApp application - * @return operation - * @throws MDMAPIException - * - */ - public static Operation createInstallAppOperation(MobileApp application) throws MDMAPIException { - - ProfileOperation operation = new ProfileOperation(); - - switch (application.getType()) { - case ENTERPRISE: - org.wso2.carbon.mdm.beans.ios.EnterpriseApplication enterpriseApplication = - new org.wso2.carbon.mdm.beans.ios.EnterpriseApplication(); - enterpriseApplication.setBundleId(application.getId()); - enterpriseApplication.setIdentifier(application.getIdentifier()); - enterpriseApplication.setManifestURL(application.getLocation()); - - Properties properties = application.getProperties(); - enterpriseApplication.setPreventBackupOfAppData((Boolean) properties. - get(MDMAppConstants.IOSConstants.IS_PREVENT_BACKUP)); - enterpriseApplication.setRemoveAppUponMDMProfileRemoval((Boolean) properties. - get(MDMAppConstants.IOSConstants.IS_REMOVE_APP)); - operation.setCode(MDMAppConstants.IOSConstants.OPCODE_INSTALL_ENTERPRISE_APPLICATION); - operation.setPayLoad(enterpriseApplication.toJSON()); - operation.setType(Operation.Type.COMMAND); - break; - case PUBLIC: - org.wso2.carbon.mdm.beans.ios.AppStoreApplication appStoreApplication = - new org.wso2.carbon.mdm.beans.ios.AppStoreApplication(); - appStoreApplication.setRemoveAppUponMDMProfileRemoval((Boolean) application.getProperties(). - get(MDMAppConstants.IOSConstants.IS_REMOVE_APP)); - appStoreApplication.setIdentifier(application.getIdentifier()); - appStoreApplication.setPreventBackupOfAppData((Boolean) application.getProperties(). - get(MDMAppConstants.IOSConstants.IS_PREVENT_BACKUP)); - appStoreApplication.setBundleId(application.getId()); - appStoreApplication.setiTunesStoreID((Integer) application.getProperties(). - get(MDMAppConstants.IOSConstants.I_TUNES_ID)); - operation.setCode(MDMAppConstants.IOSConstants.OPCODE_INSTALL_STORE_APPLICATION); - operation.setType(Operation.Type.COMMAND); - operation.setPayLoad(appStoreApplication.toJSON()); - break; - case WEBAPP: - WebClip webClip = new WebClip(); - webClip.setIcon(application.getIconImage()); - webClip.setIsRemovable(application.getProperties(). - getProperty(MDMAppConstants.IOSConstants.IS_REMOVE_APP)); - webClip.setLabel(application.getProperties(). - getProperty(MDMAppConstants.IOSConstants.LABEL)); - webClip.setURL(application.getLocation()); - - operation.setCode(MDMAppConstants.IOSConstants.OPCODE_INSTALL_WEB_APPLICATION); - operation.setType(Operation.Type.PROFILE); - operation.setPayLoad(webClip.toJSON()); - break; - } - return operation; - } - - public static Operation createAppUninstallOperation(MobileApp application) throws MDMAPIException{ - - ProfileOperation operation = new ProfileOperation(); - operation.setCode(MDMAppConstants.IOSConstants.OPCODE_REMOVE_APPLICATION); - operation.setType(Operation.Type.PROFILE); - - org.wso2.carbon.mdm.beans.ios.RemoveApplication removeApplication = - new org.wso2.carbon.mdm.beans.ios.RemoveApplication(); - removeApplication.setBundleId(application.getIdentifier()); - operation.setPayLoad(removeApplication.toJSON()); - - return operation; - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/ResponsePayload.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/ResponsePayload.java deleted file mode 100644 index 6294000663..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/api/util/ResponsePayload.java +++ /dev/null @@ -1,107 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.api.util; - -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; - -@XmlRootElement -public class ResponsePayload { - - private int statusCode; - private String messageFromServer; - private Object responseContent; - - @XmlElement - public int getStatusCode() { - return statusCode; - } - - public void setStatusCode(int statusCode) { - this.statusCode = statusCode; - } - - @XmlElement - public String getMessageFromServer() { - return messageFromServer; - } - - public void setMessageFromServer(String messageFromServer) { - this.messageFromServer = messageFromServer; - } - - @XmlElement - public Object getResponseContent() { - return responseContent; - } - - public void setResponseContent(Object responseContent) { - this.responseContent = responseContent; - } - - private ResponsePayloadBuilder getBuilder() { - return new ResponsePayloadBuilder(); - } - - public static ResponsePayloadBuilder statusCode(int statusCode) { - ResponsePayload message = new ResponsePayload(); - return message.getBuilder().statusCode(statusCode); - } - - public static ResponsePayloadBuilder messageFromServer(String messageFromServer) { - ResponsePayload message = new ResponsePayload(); - return message.getBuilder().messageFromServer(messageFromServer); - } - - public static ResponsePayloadBuilder responseContent(String responseContent) { - ResponsePayload message = new ResponsePayload(); - return message.getBuilder().responseContent(responseContent); - } - - public class ResponsePayloadBuilder { - - private int statusCode; - private String messageFromServer; - private Object responseContent; - - public ResponsePayloadBuilder statusCode(int statusCode) { - this.statusCode = statusCode; - return this; - } - - public ResponsePayloadBuilder messageFromServer(String messageFromServer) { - this.messageFromServer = messageFromServer; - return this; - } - - public ResponsePayloadBuilder responseContent(String responseContent) { - this.responseContent = responseContent; - return this; - } - - public ResponsePayload build() { - ResponsePayload payload = new ResponsePayload(); - payload.setStatusCode(statusCode); - payload.setMessageFromServer(messageFromServer); - payload.setResponseContent(responseContent); - return payload; - } - } - -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ApplicationWrapper.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ApplicationWrapper.java deleted file mode 100644 index ad2db850d0..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ApplicationWrapper.java +++ /dev/null @@ -1,63 +0,0 @@ -/* - * - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.beans; - -import org.wso2.carbon.device.mgt.common.DeviceIdentifier; -import java.util.List; - -public class ApplicationWrapper { - - private List userNameList; - private List roleNameList; - private List deviceIdentifiers; - private MobileApp application; - - public MobileApp getApplication() { - return application; - } - - public void setApplication(MobileApp application) { - this.application = application; - } - public List getUserNameList() { - return userNameList; - } - - public void setUserNameList(List userNameList) { - this.userNameList = userNameList; - } - - public List getRoleNameList() { - return roleNameList; - } - - public void setRoleNameList(List roleNameList) { - this.roleNameList = roleNameList; - } - - public List getDeviceIdentifiers() { - return deviceIdentifiers; - } - - public void setDeviceIdentifiers(List deviceIdentifiers) { - this.deviceIdentifiers = deviceIdentifiers; - } - -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/EnrollmentCertificate.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/EnrollmentCertificate.java deleted file mode 100644 index bde1cf1a7c..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/EnrollmentCertificate.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.beans; - -public class EnrollmentCertificate { - String serial; - String pem; - int tenantId; - - public int getTenantId() { - return tenantId; - } - - public void setTenantId(int tenantId) { - this.tenantId = tenantId; - } - - public String getSerial() { - return serial; - } - - public void setSerial(String serial) { - this.serial = serial; - } - - public String getPem() { - return pem; - } - - public void setPem(String pem) { - this.pem = pem; - } - -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/MobileApp.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/MobileApp.java deleted file mode 100644 index 2f1ef19b3f..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/MobileApp.java +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.wso2.carbon.mdm.beans; - -import java.util.HashMap; -import java.util.Map; -import java.util.Properties; - -/** - * This class represents the generic mobile Application information - * which is used by AppM. - */ -public class MobileApp { - - private String id; - private String name; - private MobileAppTypes type; - private String platform; - private String version; - private String identifier; - private String iconImage; - private String packageName; - private String appIdentifier; - private String location; - private Properties properties; - - public MobileAppTypes getType() { - return type; - } - - public void setType(MobileAppTypes type) { - this.type = type; - } - - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getPlatform() { - return platform; - } - - public void setPlatform(String platform) { - this.platform = platform; - } - - public String getVersion() { - return version; - } - - public void setVersion(String version) { - this.version = version; - } - - public String getIdentifier() { - return identifier; - } - - public void setIdentifier(String identifier) { - this.identifier = identifier; - } - - public String getIconImage() { - return iconImage; - } - - public void setIconImage(String iconImage) { - this.iconImage = iconImage; - } - - public String getPackageName() { - return packageName; - } - - public void setPackageName(String packageName) { - this.packageName = packageName; - } - - public String getAppIdentifier() { - return appIdentifier; - } - - public void setAppIdentifier(String appIdentifier) { - this.appIdentifier = appIdentifier; - } - - public String getLocation() { - return location; - } - - public void setLocation(String location) { - this.location = location; - } - - public Properties getProperties() { - return properties; - } - - public void setProperties(Properties properties) { - this.properties = properties; - } - -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/MobileAppTypes.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/MobileAppTypes.java deleted file mode 100644 index 151f57c5f9..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/MobileAppTypes.java +++ /dev/null @@ -1,22 +0,0 @@ -/* - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.wso2.carbon.mdm.beans; - -public enum MobileAppTypes { - ENTERPRISE,WEBAPP,PUBLIC -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/PolicyWrapper.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/PolicyWrapper.java deleted file mode 100644 index 931f98a867..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/PolicyWrapper.java +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.beans; - -import org.wso2.carbon.device.mgt.common.Device; -import java.util.List; - -public class PolicyWrapper { - - private int id; - private Profile profile; - private String policyName; - private String description; - private String compliance; - private List roles; - private String ownershipType; - private List devices; - private List users; - private int tenantId; - private int profileId; - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public Profile getProfile() { - return profile; - } - - public void setProfile(Profile profile) { - this.profile = profile; - } - - public String getCompliance() { - return compliance; - } - - public void setCompliance(String compliance) { - this.compliance = compliance; - } - - public String getPolicyName() { - return policyName; - } - - public String getDescription() { - return description; - } - - public void setDescription(String description) { - this.description = description; - } - - public void setPolicyName(String policyName) { - this.policyName = policyName; - } - - public List getRoles() { - return roles; - } - - public void setRoles(List roles) { - this.roles = roles; - } - - public String getOwnershipType() { - return ownershipType; - } - - public void setOwnershipType(String ownershipType) { - this.ownershipType = ownershipType; - } - - public List getDevices() { - return devices; - } - - public void setDevices(List devices) { - this.devices = devices; - } - - public List getUsers() { - return users; - } - - public void setUsers(List users) { - this.users = users; - } - - public int getTenantId() { - return tenantId; - } - - public void setTenantId(int tenantId) { - this.tenantId = tenantId; - } - - public int getProfileId() { - return profileId; - } - - public void setProfileId(int profileId) { - this.profileId = profileId; - } - -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/PriorityUpdatedPolicyWrapper.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/PriorityUpdatedPolicyWrapper.java deleted file mode 100644 index ed0b7c56e7..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/PriorityUpdatedPolicyWrapper.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, - * either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.beans; - -public class PriorityUpdatedPolicyWrapper { - - private int id; - private int priority; - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public int getPriority() { - return priority; - } - - public void setPriority(int priority) { - this.priority = priority; - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/Profile.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/Profile.java deleted file mode 100644 index 19e41d8852..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/Profile.java +++ /dev/null @@ -1,107 +0,0 @@ -/* -* Copyright (c) 2015 WSO2 Inc. (http://www.wso2.org) All Rights Reserved. -* -* WSO2 Inc. licenses this file to you under the Apache License, -* Version 2.0 (the "License"); you may not use this file except -* in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, -* software distributed under the License is distributed on an -* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -* KIND, either express or implied. See the License for the -* specific language governing permissions and limitations -* under the License. -*/ - -package org.wso2.carbon.mdm.beans; - - - -import org.wso2.carbon.device.mgt.core.dto.DeviceType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import java.sql.Timestamp; -import java.util.List; - -@XmlRootElement -public class Profile { - - private int profileId; - private String profileName; - private int tenantId; - private DeviceType deviceType; - private Timestamp createdDate; - private Timestamp updatedDate; - private List profileFeaturesList; // Features included in the policies. - - public DeviceType getDeviceType() { - return deviceType; - } - - public void setDeviceType(DeviceType deviceType) { - this.deviceType = deviceType; - } - @XmlElement - public int getTenantId() { - return tenantId; - } - - public void setTenantId(int tenantId) { - this.tenantId = tenantId; - } - -/* public List getFeaturesList() { - return featuresList; - } - - public void setFeaturesList(List featuresList) { - this.featuresList = featuresList; - }*/ - @XmlElement - public int getProfileId() { - return profileId; - } - - public void setProfileId(int profileId) { - this.profileId = profileId; - } - - @XmlElement - public String getProfileName() { - return profileName; - } - - public void setProfileName(String profileName) { - this.profileName = profileName; - } - - @XmlElement - public Timestamp getCreatedDate() { - return createdDate; - } - - public void setCreatedDate(Timestamp createdDate) { - this.createdDate = createdDate; - } - - @XmlElement - public Timestamp getUpdatedDate() { - return updatedDate; - } - - public void setUpdatedDate(Timestamp updatedDate) { - this.updatedDate = updatedDate; - } - - @XmlElement - public List getProfileFeaturesList() { - return profileFeaturesList; - } - - public void setProfileFeaturesList(List profileFeaturesList) { - this.profileFeaturesList = profileFeaturesList; - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ProfileFeature.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ProfileFeature.java deleted file mode 100644 index 0d56de0900..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ProfileFeature.java +++ /dev/null @@ -1,85 +0,0 @@ -/* -* Copyright (c) 2015 WSO2 Inc. (http://www.wso2.org) All Rights Reserved. -* -* WSO2 Inc. licenses this file to you under the Apache License, -* Version 2.0 (the "License"); you may not use this file except -* in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, -* software distributed under the License is distributed on an -* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -* KIND, either express or implied. See the License for the -* specific language governing permissions and limitations -* under the License. -*/ - -package org.wso2.carbon.mdm.beans; - -import com.google.gson.Gson; -import java.io.Serializable; -import java.util.LinkedHashMap; - -public class ProfileFeature implements Serializable { - - private int id; - private String featureCode; - private int profileId; - private int deviceTypeId; - private Object content; - private String payLoad; - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getFeatureCode() { - return featureCode; - } - - public void setFeatureCode(String featureCode) { - this.featureCode = featureCode; - } - - public int getProfileId() { - return profileId; - } - - public void setProfileId(int profileId) { - this.profileId = profileId; - } - - public int getDeviceTypeId() { - return deviceTypeId; - } - - public void setDeviceTypeId(int deviceTypeId) { - this.deviceTypeId = deviceTypeId; - } - - - public String getPayLoad() { - Gson gson = new Gson(); - this.payLoad = gson.toJson(content); - return payLoad; - } - - public void setPayLoad(String payLoad) { - this.payLoad = payLoad; - } - - - public Object getContent() { - return content; - } - - public void setContent(Object content) { - this.content = content; - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/RoleWrapper.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/RoleWrapper.java deleted file mode 100644 index c87640a7c3..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/RoleWrapper.java +++ /dev/null @@ -1,59 +0,0 @@ -package org.wso2.carbon.mdm.beans; - -import org.wso2.carbon.user.mgt.common.UIPermissionNode; - -/* - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, - * either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -public class RoleWrapper { - private String roleName; - private String[] permissions; - private String[] users; - private UIPermissionNode permissionList; - - public String getRoleName() { - return roleName; - } - - public void setRoleName(String roleName) { - this.roleName = roleName; - } - - public String[] getPermissions() { - return permissions; - } - - public void setPermissions(String[] permissions) { - this.permissions = permissions; - } - - public String[] getUsers() { - return users; - } - - public void setUsers(String[] users) { - this.users = users; - } - - public UIPermissionNode getPermissionList() { - return permissionList; - } - - public void setPermissionList(UIPermissionNode permissionList) { - this.permissionList = permissionList; - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/UserCredentialWrapper.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/UserCredentialWrapper.java deleted file mode 100644 index 91e2fd0ff7..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/UserCredentialWrapper.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, - * either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.beans; - -public class UserCredentialWrapper { - - private String username; - /* - Base64 encoded password - */ - private String oldPassword; - private String newPassword; - - public String getNewPassword() { - return newPassword; - } - - public void setNewPassword(String newPassword) { - this.newPassword = newPassword; - } - - public String getUsername() { - return username; - } - - public void setUsername(String username) { - this.username = username; - } - - public String getOldPassword() { - return oldPassword; - } - - public void setOldPassword(String oldPassword) { - this.oldPassword = oldPassword; - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/UserWrapper.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/UserWrapper.java deleted file mode 100644 index acdb9efcaf..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/UserWrapper.java +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.beans; - -public class UserWrapper { - - private String username; - /* - Base64 encoded password - */ - private String password; - private String firstname; - private String lastname; - private String emailAddress; - private String[] roles; - - public String getUsername() { - return username; - } - - public void setUsername(String username) { - this.username = username; - } - - public String getFirstname() { - return firstname; - } - - public void setFirstname(String firstname) { - this.firstname = firstname; - } - - public String getLastname() { - return lastname; - } - - public void setLastname(String lastname) { - this.lastname = lastname; - } - - public String getEmailAddress() { - return emailAddress; - } - - public void setEmailAddress(String emailAddress) { - this.emailAddress = emailAddress; - } - - /* - Giving a clone of the array since arrays are mutable - */ - public String[] getRoles() { - String[] copiedRoles = roles; - if (roles != null){ - copiedRoles = roles.clone(); - } - return copiedRoles; - } - - public void setRoles(String[] roles) { - this.roles = roles; - } - - public String getPassword() { - return password; - } - - public void setPassword(String password) { - this.password = password; - } -} \ No newline at end of file diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/android/AppStoreApplication.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/android/AppStoreApplication.java deleted file mode 100644 index b60ff7cdbd..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/android/AppStoreApplication.java +++ /dev/null @@ -1,52 +0,0 @@ -/* - * - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.wso2.carbon.mdm.beans.android; - -import com.google.gson.Gson; -import org.wso2.carbon.mdm.api.common.MDMAPIException; -import java.io.IOException; -import java.io.Serializable; - -/** - * This class represents the Appstore Application information. - */ -public class AppStoreApplication implements Serializable { - - private String type; - private String appIdentifier; - - public String getType() { - return type; - } - - public void setType(String type) { - this.type = type; - } - - public String getAppIdentifier() { - return appIdentifier; - } - - public void setAppIdentifier(String appIdentifier) { - this.appIdentifier = appIdentifier; - } - - public String toJSON() throws MDMAPIException { - Gson gson = new Gson(); - return gson.toJson(this); - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/android/EnterpriseApplication.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/android/EnterpriseApplication.java deleted file mode 100644 index f19dbd44c1..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/android/EnterpriseApplication.java +++ /dev/null @@ -1,61 +0,0 @@ -/* - * - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.wso2.carbon.mdm.beans.android; - -import com.google.gson.Gson; -import org.wso2.carbon.mdm.api.common.MDMAPIException; -import java.io.IOException; -import java.io.Serializable; - -/** - * This class represents the Enterprise Application information. - */ -public class EnterpriseApplication implements Serializable { - - private String type; - private String url; - private String appIdentifier; - - public String getAppIdentifier() { - return appIdentifier; - } - - public void setAppIdentifier(String appIdentifier) { - this.appIdentifier = appIdentifier; - } - - public String getType() { - return type; - } - - public void setType(String type) { - this.type = type; - } - - public String getUrl() { - return url; - } - - public void setUrl(String url) { - this.url = url; - } - - public String toJSON() throws MDMAPIException { - Gson gson = new Gson(); - return gson.toJson(this); - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/android/WebApplication.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/android/WebApplication.java deleted file mode 100644 index 7632524c9f..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/android/WebApplication.java +++ /dev/null @@ -1,61 +0,0 @@ -/* - * - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.wso2.carbon.mdm.beans.android; - -import com.google.gson.Gson; -import org.wso2.carbon.mdm.api.common.MDMAPIException; -import java.io.IOException; -import java.io.Serializable; - -/** - * This class represents the Web Application information. - */ -public class WebApplication implements Serializable { - - private String name; - private String url; - private String type; - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getUrl() { - return url; - } - - public void setUrl(String url) { - this.url = url; - } - - public String getType() { - return type; - } - - public void setType(String type) { - this.type = type; - } - - public String toJSON() throws MDMAPIException { - Gson gson = new Gson(); - return gson.toJson(this); - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ios/AppStoreApplication.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ios/AppStoreApplication.java deleted file mode 100644 index aa6c0a0121..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ios/AppStoreApplication.java +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.wso2.carbon.mdm.beans.ios; - -import com.google.gson.Gson; -import org.wso2.carbon.mdm.api.common.MDMAPIException; -import java.io.IOException; -import java.io.Serializable; - -public class AppStoreApplication implements Serializable { - - private String identifier; - private int iTunesStoreID; - private boolean removeAppUponMDMProfileRemoval; - private boolean preventBackupOfAppData; - private String bundleId; - private String UUID; - - public String getUUID() { - return UUID; - } - - public void setUUID(String UUID) { - this.UUID = UUID; - } - - public String getIdentifier() { - return identifier; - } - - public void setIdentifier(String identifier) { - this.identifier = identifier; - } - - public int getiTunesStoreID() { - return iTunesStoreID; - } - - public void setiTunesStoreID(int iTunesStoreID) { - this.iTunesStoreID = iTunesStoreID; - } - - public boolean isRemoveAppUponMDMProfileRemoval() { - return removeAppUponMDMProfileRemoval; - } - - public void setRemoveAppUponMDMProfileRemoval(boolean removeAppUponMDMProfileRemoval) { - this.removeAppUponMDMProfileRemoval = removeAppUponMDMProfileRemoval; - } - - public boolean isPreventBackupOfAppData() { - return preventBackupOfAppData; - } - - public void setPreventBackupOfAppData(boolean preventBackupOfAppData) { - this.preventBackupOfAppData = preventBackupOfAppData; - } - - public String getBundleId() { - return bundleId; - } - - public void setBundleId(String bundleId) { - this.bundleId = bundleId; - } - - public String toJSON() throws MDMAPIException { - Gson gson = new Gson(); - return gson.toJson(this); - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ios/EnterpriseApplication.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ios/EnterpriseApplication.java deleted file mode 100644 index d310779faa..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ios/EnterpriseApplication.java +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -package org.wso2.carbon.mdm.beans.ios; - -import com.google.gson.Gson; -import org.wso2.carbon.mdm.api.common.MDMAPIException; -import java.io.IOException; -import java.io.Serializable; - -public class EnterpriseApplication implements Serializable { - - private String identifier; - private String manifestURL; - private boolean removeAppUponMDMProfileRemoval; - private boolean preventBackupOfAppData; - private String bundleId; - private String UUID; - - public void setUUID(String UUID) { - this.UUID = UUID; - } - - public String getIdentifier() { - return identifier; - } - - public void setIdentifier(String identifier) { - this.identifier = identifier; - } - - public String getManifestURL() { - return manifestURL; - } - - public void setManifestURL(String manifestURL) { - this.manifestURL = manifestURL; - } - - public boolean isRemoveAppUponMDMProfileRemoval() { - return removeAppUponMDMProfileRemoval; - } - - public void setRemoveAppUponMDMProfileRemoval(boolean removeAppUponMDMProfileRemoval) { - this.removeAppUponMDMProfileRemoval = removeAppUponMDMProfileRemoval; - } - - public boolean isPreventBackupOfAppData() { - return preventBackupOfAppData; - } - - public void setPreventBackupOfAppData(boolean preventBackupOfAppData) { - this.preventBackupOfAppData = preventBackupOfAppData; - } - - public String getBundleId() { - return bundleId; - } - - public void setBundleId(String bundleId) { - this.bundleId = bundleId; - } - - public String toJSON() throws MDMAPIException { - Gson gson = new Gson(); - return gson.toJson(this); - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ios/RemoveApplication.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ios/RemoveApplication.java deleted file mode 100644 index 9c15ba6a36..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ios/RemoveApplication.java +++ /dev/null @@ -1,24 +0,0 @@ -package org.wso2.carbon.mdm.beans.ios; - -import com.google.gson.Gson; -import org.wso2.carbon.mdm.api.common.MDMAPIException; -import java.io.IOException; -import java.io.Serializable; - -public class RemoveApplication implements Serializable { - - private String bundleId; - - public String getBundleId() { - return bundleId; - } - - public void setBundleId(String bundleId) { - this.bundleId = bundleId; - } - - public String toJSON() throws MDMAPIException { - Gson gson = new Gson(); - return gson.toJson(this); - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ios/WebClip.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ios/WebClip.java deleted file mode 100644 index 4604eab468..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/beans/ios/WebClip.java +++ /dev/null @@ -1,60 +0,0 @@ -package org.wso2.carbon.mdm.beans.ios; - -import com.google.gson.Gson; -import org.wso2.carbon.mdm.api.common.MDMAPIException; -import java.io.IOException; - -public class WebClip { - - private String URL; - private String label; - private String icon; - private String isRemovable; - private String UUID; - - public String getUUID() { - return UUID; - } - - public void setUUID(String UUID) { - this.UUID = UUID; - } - - public String getURL() { - return URL; - } - - public void setURL(String URL) { - this.URL = URL; - } - - public String getLabel() { - return label; - } - - public void setLabel(String label) { - this.label = label; - } - - public String getIcon() { - return icon; - } - - public void setIcon(String icon) { - this.icon = icon; - } - - public String getIsRemovable() { - return isRemovable; - } - - public void setIsRemovable(String isRemovable) { - this.isRemovable = isRemovable; - } - - public String toJSON() throws MDMAPIException { - Gson gson = new Gson(); - return gson.toJson(this); - } - -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/exception/BadRequestException.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/exception/BadRequestException.java deleted file mode 100644 index adbe78069a..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/exception/BadRequestException.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.exception; - -import javax.ws.rs.WebApplicationException; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; - -public class BadRequestException extends WebApplicationException { - - public BadRequestException(Message message, MediaType mediaType) { - super(Response.status(Response.Status.BAD_REQUEST).entity(message).type(mediaType).build()); - } - -} \ No newline at end of file diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/exception/Message.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/exception/Message.java deleted file mode 100644 index 4d5ee2ded3..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/exception/Message.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.exception; - -public class Message { - - private String errorMessage; - private String discription; - - public String getErrorMessage() { - return errorMessage; - } - - public void setErrorMessage(String errorMessage) { - this.errorMessage = errorMessage; - } - - public String getDiscription() { - return discription; - } - - public void setDiscription(String discription) { - this.discription = discription; - } -} \ No newline at end of file diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/util/Constants.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/util/Constants.java deleted file mode 100644 index e9caa31d27..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/util/Constants.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * you may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.util; - -/** - * Holds the constants used by MDM-Admin web application. - */ -public class Constants { - - public static final String USER_CLAIM_EMAIL_ADDRESS = "http://wso2.org/claims/emailaddress"; - public static final String USER_CLAIM_FIRST_NAME = "http://wso2.org/claims/givenname"; - public static final String USER_CLAIM_LAST_NAME = "http://wso2.org/claims/lastname"; - -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/util/MDMUtil.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/util/MDMUtil.java deleted file mode 100644 index d766776cc3..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/util/MDMUtil.java +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.wso2.carbon.mdm.util; - -import org.wso2.carbon.mdm.beans.ProfileFeature; -import org.wso2.carbon.policy.mgt.common.Profile; - -import java.util.ArrayList; -import java.util.List; - -public class MDMUtil { - - public static Profile convertProfile(org.wso2.carbon.mdm.beans.Profile mdmProfile) { - Profile profile = new Profile(); - profile.setTenantId(mdmProfile.getTenantId()); - profile.setCreatedDate(mdmProfile.getCreatedDate()); - profile.setDeviceType(mdmProfile.getDeviceType()); - - List profileFeatures = - new ArrayList(mdmProfile.getProfileFeaturesList().size()); - for (ProfileFeature mdmProfileFeature : mdmProfile.getProfileFeaturesList()) { - profileFeatures.add(convertProfileFeature(mdmProfileFeature)); - } - profile.setProfileFeaturesList(profileFeatures); - profile.setProfileId(mdmProfile.getProfileId()); - profile.setProfileName(mdmProfile.getProfileName()); - profile.setUpdatedDate(mdmProfile.getUpdatedDate()); - return profile; - } - - public static org.wso2.carbon.policy.mgt.common.ProfileFeature convertProfileFeature(ProfileFeature - mdmProfileFeature) { - - org.wso2.carbon.policy.mgt.common.ProfileFeature profileFeature = - new org.wso2.carbon.policy.mgt.common.ProfileFeature(); - profileFeature.setProfileId(mdmProfileFeature.getProfileId()); - profileFeature.setContent(mdmProfileFeature.getPayLoad()); - profileFeature.setDeviceTypeId(mdmProfileFeature.getDeviceTypeId()); - profileFeature.setFeatureCode(mdmProfileFeature.getFeatureCode()); - profileFeature.setId(mdmProfileFeature.getId()); - return profileFeature; - - } -} \ No newline at end of file diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/util/SetReferenceTransformer.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/util/SetReferenceTransformer.java deleted file mode 100644 index da4136593e..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/carbon/mdm/util/SetReferenceTransformer.java +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.carbon.mdm.util; - -import java.util.ArrayList; -import java.util.List; -import java.util.TreeSet; - -public class SetReferenceTransformer{ - private List objectsToRemove; - private List objectsToAdd; - - /** - * Use the Set theory to find the objects to delete and objects to add - - The difference of objects in existingSet and newSet needed to be deleted - - new roles to add = newSet - The intersection of roles in existingSet and newSet - * @param currentList - * @param nextList - */ - public void transform(List currentList, List nextList){ - TreeSet existingSet = new TreeSet(currentList); - TreeSet newSet = new TreeSet(nextList); - - existingSet.removeAll(newSet); - - objectsToRemove = new ArrayList(existingSet); - - // Clearing and re-initializing the set - existingSet = new TreeSet(currentList); - - newSet.removeAll(existingSet); - objectsToAdd = new ArrayList(newSet); - } - - public List getObjectsToRemove() { - return objectsToRemove; - } - - public List getObjectsToAdd() { - return objectsToAdd; - } -} \ No newline at end of file diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/mdm/common/Application.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/mdm/common/Application.java deleted file mode 100644 index 0a11ad1bc4..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/mdm/common/Application.java +++ /dev/null @@ -1,119 +0,0 @@ -/* - * - * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.mdm.common; - -import org.wso2.carbon.device.mgt.common.DeviceIdentifier; - -import java.util.List; - -public class Application { - - private String applicationName; - private String appId; - private String locationUrl; - private String imageUrl; - private String platform; - private String version; - private List userNameList; - private List roleNameList; - - public List getDeviceIdentifiers() { - return deviceIdentifiers; - } - - public void setDeviceIdentifiers(List deviceIdentifiers) { - this.deviceIdentifiers = deviceIdentifiers; - } - - private List deviceIdentifiers; - - - public String getApplicationName() { - return applicationName; - } - - public void setApplicationName(String applicationName) { - this.applicationName = applicationName; - } - - - public String getAppId() { - return appId; - } - - public void setAppId(String appId) { - this.appId = appId; - } - - - public String getLocationUrl() { - return locationUrl; - } - - public void setLocationUrl(String locationUrl) { - this.locationUrl = locationUrl; - } - - - public String getImageUrl() { - return imageUrl; - } - - public void setImageUrl(String imageUrl) { - this.imageUrl = imageUrl; - } - - - public String getPlatform() { - return platform; - } - - public void setPlatform(String platform) { - this.platform = platform; - } - - - public String getVersion() { - return version; - } - - public void setVersion(String version) { - this.version = version; - } - - - public List getUserNameList() { - return userNameList; - } - - public void setUserNameList(List userNameList) { - this.userNameList = userNameList; - } - - - public List getRoleNameList() { - return roleNameList; - } - - public void setRoleNameList(List roleNameList) { - this.roleNameList = roleNameList; - } - -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/mdm/common/GsonMessageBodyHandler.java b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/mdm/common/GsonMessageBodyHandler.java deleted file mode 100644 index 09b49e6f1e..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/java/org/wso2/mdm/common/GsonMessageBodyHandler.java +++ /dev/null @@ -1,94 +0,0 @@ -/* - * Copyright (c) 2014, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. - * - * WSO2 Inc. licenses this file to you under the Apache License, - * Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.wso2.mdm.common; - -import com.google.gson.Gson; -import com.google.gson.GsonBuilder; - -import javax.ws.rs.Consumes; -import javax.ws.rs.Produces; -import javax.ws.rs.WebApplicationException; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.MultivaluedMap; -import javax.ws.rs.ext.MessageBodyReader; -import javax.ws.rs.ext.MessageBodyWriter; -import javax.ws.rs.ext.Provider; -import java.io.*; -import java.lang.annotation.Annotation; -import java.lang.reflect.Type; - -import static javax.ws.rs.core.MediaType.APPLICATION_JSON; - -@Provider -@Produces(APPLICATION_JSON) -@Consumes(APPLICATION_JSON) -public class GsonMessageBodyHandler implements MessageBodyWriter, MessageBodyReader { - - private Gson gson; - private static final String UTF_8 = "UTF-8"; - - public boolean isReadable(Class aClass, Type type, Annotation[] annotations, MediaType mediaType) { - return true; - } - - private Gson getGson() { - if (gson == null) { - final GsonBuilder gsonBuilder = new GsonBuilder(); - gson = gsonBuilder.create(); - } - return gson; - } - - public Object readFrom(Class objectClass, Type type, Annotation[] annotations, MediaType mediaType, - MultivaluedMap stringStringMultivaluedMap, InputStream entityStream) - throws IOException, WebApplicationException { - - InputStreamReader reader = new InputStreamReader(entityStream, "UTF-8"); - - try { - return getGson().fromJson(reader, type); - } finally { - reader.close(); - } - } - - public boolean isWriteable(Class aClass, Type type, Annotation[] annotations, MediaType mediaType) { - return true; - } - - public long getSize(Object o, Class aClass, Type type, Annotation[] annotations, MediaType mediaType) { - return -1; - } - - public void writeTo(Object object, Class aClass, Type type, Annotation[] annotations, MediaType mediaType, - MultivaluedMap stringObjectMultivaluedMap, OutputStream entityStream) - throws IOException, WebApplicationException { - - OutputStreamWriter writer = new OutputStreamWriter(entityStream, UTF_8); - try { - Type jsonType = null; - if (type.equals(type)) { - jsonType = type; - } - getGson().toJson(object, jsonType, writer); - } finally { - writer.close(); - } - } -} diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/webapp/META-INF/permissions.xml b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/webapp/META-INF/permissions.xml deleted file mode 100644 index 8f675d7745..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/webapp/META-INF/permissions.xml +++ /dev/null @@ -1,1021 +0,0 @@ - - - - - - - - - - Device Management - /device-mgt - / - GET - - - - Device Management Admin - /device-mgt/emm-admin - / - GET - - - - Device Management User - /device-mgt/user - / - GET - - - - Devices - /device-mgt/emm-admin/devices - / - GET - - - - Policies - /device-mgt/emm-admin/policies - / - GET - - - - Notifications - /device-mgt/emm-admin/notifications - / - GET - - - - Users - /device-mgt/emm-admin/users - / - GET - - - - Operations - /device-mgt/emm-admin/operations - / - GET - - - - Applications - /device-mgt/emm-admin/operations/applications - / - GET - - - - Roles - /device-mgt/emm-admin/roles - / - GET - - - - Configurations - /device-mgt/emm-admin/platform-configs - / - GET - - - - View Dashboard - /device-mgt/emm-admin/dashboard - / - GET - - - - List devices - /device-mgt/emm-admin/devices/list - /devices - GET - - - - List devices - /device-mgt/emm-admin/devices/list - /devices/types - GET - - - - Add policy - /device-mgt/emm-admin/policies/add - /devices/types - GET - - - - Edit policy - /device-mgt/emm-admin/policies/update - /devices/types - GET - - - - View device - /device-mgt/emm-admin/devices/view - /devices/view - GET - - - - View device - /device-mgt/user/devices/view - /devices/view - GET - - - - - - - - - - - - View device - /device-mgt/emm-admin/devices/view - /devices/user/*/* - GET - - - - List devices - /device-mgt/emm-admin/devices/list - /devices/count - GET - - - - List devices - /device-mgt/emm-admin/devices/list - /devices/name/*/* - GET - - - - - - View notifications - /device-mgt/emm-admin/notifications/view - /notifications - GET - - - - Add notification - /device-mgt/emm-admin/notifications/add - /notifications - POST - - - - Update notification - /device-mgt/emm-admin/notifications/update - /notifications/*/* - PUT - - - - View notifications - /device-mgt/emm-admin/notifications/view - /notifications/* - GET - - - - - - View user - /device-mgt/emm-admin/users/view - /operations - GET - - - - Install application - /device-mgt/emm-admin/operations/applications/install-applications - /operations - POST - - - - Install application - /device-mgt/emm-admin/operations/applications/install-applications - /operations/installApp/* - POST - - - - Uninstall application - /device-mgt/emm-admin/operations/applications/uninstall-applications - /operations/uninstallApp/* - POST - - - - View application - /device-mgt/emm-admin/operations/applications/view-applications - /operations/*/*/* - GET - - - - View devices - /device-mgt/user/devices/view - /operations/*/*/* - GET - - - - View device - /device-mgt/emm-admin/devices/view - /operations/*/*/* - GET - - - - View device - /device-mgt/emm-admin/devices/view - /operations/*/* - GET - - - - View device - /device-mgt/emm-admin/devices/view - /operations/paginate/*/* - GET - - - - View device - /device-mgt/user/devices/view - /operations/*/* - GET - - - - View device - /device-mgt/user/devices/view - /operations/paginate/*/* - GET - - - - - - - - - - - - - - List policies - /device-mgt/emm-admin/policies/list - /features/* - GET - - - - View device - /device-mgt/emm-admin/devices/view - /features/* - GET - - - - View device - /device-mgt/user/devices/view - /features/* - GET - - - - View device - /device-mgt/user/devices/view - /features - GET - emm_admin - - - - - - List roles - /device-mgt/emm-admin/roles/list - /roles - GET - - - - View user - /device-mgt/emm-admin/users/view - /roles - GET - - - - Add policy - /device-mgt/emm-admin/policies/add - /roles - GET - - - - Update policy - /device-mgt/emm-admin/policies/update - /roles - GET - - - - List roles - /device-mgt/emm-admin/roles/list - /roles/permissions - GET - - - - List roles - /device-mgt/emm-admin/roles/list - /roles/* - GET - - - - Add user - /device-mgt/emm-admin/users/add - /roles/* - GET - - - - Update role - /device-mgt/emm-admin/roles/update - /roles - PUT - - - - - - - - - - - - Update role - /device-mgt/emm-admin/roles/update - /roles/users - PUT - - - - Add role - /device-mgt/emm-admin/roles/add - /roles - POST - - - - Remove role - /device-mgt/emm-admin/roles/remove - /roles - DELETE - - - - List roles - /device-mgt/emm-admin/roles/list - /roles/count - GET - - - - - - List users - /device-mgt/emm-admin/users/list - /users - GET - - - - Add user - /device-mgt/emm-admin/users/add - /users - POST - - - - View user - /device-mgt/emm-admin/users/view - /users/view - GET - - - - Update user - /device-mgt/emm-admin/users/update - /users - PUT - - - - Change user password - /login - /users/change-password - POST - emm_admin - - - - Reset password - /device-mgt/emm-admin/users/password-reset - /users/reset-password - POST - - - - Remove user - /device-mgt/emm-admin/users/remove - /users - DELETE - - - - View user - /device-mgt/emm-admin/users/view - /users/roles - GET - - - - - - - - - - - Add user - /device-mgt/emm-admin/users/add - /roles - POST - - - - List devices - /device-mgt/user/devices/list - /users/devices - GET - - - - List devices - /device-mgt/emm-admin/devices/list - /users/devices - GET - - - - View user - /device-mgt/emm-admin/users/view - /users/*/* - GET - - - - List users - /device-mgt/emm-admin/users/list - /users/count - GET - - - - List users - /device-mgt/emm-admin/users/list - /users/view-users - GET - - - - Add role - /device-mgt/emm-admin/roles/add - /users/view-users - GET - - - - Update role - /device-mgt/emm-admin/roles/update - /users/view-users - GET - - - - Add policy - /device-mgt/emm-admin/policies/add - /users/view-users - GET - - - - Update policy - /device-mgt/emm-admin/policies/update - /users/view-users - GET - - - - List users - /device-mgt/emm-admin/users/list - /users/users-by-username - GET - - - - List users - /device-mgt/emm-admin/users/list - /users/users-by-username/* - GET - - - - Invite user - /device-mgt/emm-admin/users/invite - /users/email-invitation - POST - - - - Authorize user - /login - /users/authorize - POST - - - - - - Add Policy - /device-mgt/emm-admin/policies/add - /policies/inactive-policy - POST - - - - List policies - /device-mgt/emm-admin/policies/list - /policies/*/* - POST - - - - List policies - /device-mgt/emm-admin/policies/list - /policies/*/*/* - GET - - - - View device - /device-mgt/emm-admin/devices/view - /policies/*/*/* - GET - - - - View device - /device-mgt/user/devices/view - /policies/*/*/* - GET - - - - Add policy - /device-mgt/emm-admin/policies/add - /policies/active-policy - POST - - - - Remove policy - /device-mgt/emm-admin/policies/remove - /policies/bulk-remove - POST - - - - List policies - /device-mgt/emm-admin/policies/list - /policies - GET - - - - List policies - /device-mgt/emm-admin/policies/list - /policies/* - GET - - - - Update policy - /device-mgt/emm-admin/policies/update - /policies/* - PUT - - - - Remove policy - /device-mgt/emm-admin/policies/remove - /policies - DELETE - - - - List policies - /device-mgt/emm-admin/policies/list - /policies/count - GET - - - - Edit policy - /device-mgt/emm-admin/policies/update - /policies/priorities - PUT - - - - Edit policy - /device-mgt/emm-admin/policies/update - /policies/activate - PUT - - - - Add policy - /device-mgt/emm-admin/policies/add - /policies/activate - PUT - - - - Edit policy - /device-mgt/emm-admin/policies/update - /policies/inactivate - PUT - - - - Add policy - /device-mgt/emm-admin/policies/add - /policies/inactivate - PUT - - - - Edit policy - /device-mgt/emm-admin/policies/update - /policies/apply-changes - PUT - - - - Add policy - /device-mgt/emm-admin/policies/add - /policies/start-task/* - GET - - - - Add policy - /device-mgt/emm-admin/policies/add - /policies/update-task/* - GET - - - - Add policy - /device-mgt/emm-admin/policies/add - /policies/stop-task - GET - - - - List policies - /device-mgt/emm-admin/policies/list - /policies/*/* - GET - - - - - - Add policy - /device-mgt/emm-admin/policies/add - /profiles - POST - - - - Edit policy - /device-mgt/emm-admin/policies/update - /profiles/* - PUT - - - - Remove policy - /device-mgt/emm-admin/policies/remove - /profiles/* - DELETE - - - - - - - Device Information - /device-mgt/emm-admin/information/get - /information/*/* - GET - - - - Device Search - /device-mgt/emm-admin/search - /information/* - GET - - - - - - - - - - - - - - - - - - - - - - - - - View configuration - /device-mgt/emm-admin/platform-configs/view - /configuration - GET - - - - Add configuration - /device-mgt/emm-admin/platform-configs/add - /configuration - POST - - - - Update configuration - /device-mgt/emm-admin/platform-configs/modify - /configuration - PUT - - - - - - - Save certificate in the database - /device-mgt/android/certificate/save - /certificates/saveCertificate - POST - emm_admin - - - get certificate in the database - /device-mgt/android/certificate/Get - /certificates/* - GET - emm_admin - - - get certificate in the database - /device-mgt/android/certificate/Get - /certificates/* - DELETE - emm_admin - - - - - - Group Management - /device-mgt/admin/groups - /groups - POST - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/*/* - PUT - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/*/* - DELETE - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups - GET - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/user/* - GET - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/*/* - GET - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/search - GET - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/user/*/all - GET - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/user/*/count - GET - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/*/*/share - PUT - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/*/*/unshare - PUT - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/*/*/share/roles/*/permissions - PUT - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/*/*/share/roles/*/permissions - DELETE - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/*/*/share/roles - GET - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/*/*/users - GET - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/*/*/devices/all - GET - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/*/*/devices/count - GET - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/*/*/devices/*/* - PUT - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/*/*/devices/*/* - DELETE - emm_admin - - - - Group Management - /device-mgt/admin/groups - /groups/*/*/users/*/permissions - GET - emm_admin - - - - diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/webapp/META-INF/webapp-classloading.xml b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/webapp/META-INF/webapp-classloading.xml deleted file mode 100644 index ed2ed21624..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/webapp/META-INF/webapp-classloading.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - false - - - CXF,Carbon - diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/webapp/WEB-INF/cxf-servlet.xml b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/webapp/WEB-INF/cxf-servlet.xml deleted file mode 100644 index c6e489f7f8..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/webapp/WEB-INF/cxf-servlet.xml +++ /dev/null @@ -1,188 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/webapp/WEB-INF/web.xml b/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 1ee664987f..0000000000 --- a/components/mobile-plugins/mobile-base-plugin/org.wso2.carbon.device.mgt.mobile.api/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,74 +0,0 @@ - - - - Admin-Webapp - - JAX-WS/JAX-RS MDM Endpoint - JAX-WS/JAX-RS Servlet - CXFServlet - - org.apache.cxf.transport.servlet.CXFServlet - - 1 - - - CXFServlet - /* - - - 60 - - - - isAdminService - false - - - doAuthentication - true - - - - - - - MDM-Admin - /* - - - CONFIDENTIAL - - - - diff --git a/components/mobile-plugins/mobile-base-plugin/pom.xml b/components/mobile-plugins/mobile-base-plugin/pom.xml index 212c8f78b6..af83bb23e2 100644 --- a/components/mobile-plugins/mobile-base-plugin/pom.xml +++ b/components/mobile-plugins/mobile-base-plugin/pom.xml @@ -34,7 +34,6 @@ org.wso2.carbon.device.mgt.mobile - org.wso2.carbon.device.mgt.mobile.api org.wso2.carbon.device.mgt.mobile.ui org.wso2.carbon.device.mgt.mobile.url.printer diff --git a/features/iot-plugins-feature/iot-base-plugin-feature/org.wso2.carbon.device.mgt.iot.feature/pom.xml b/features/iot-plugins-feature/iot-base-plugin-feature/org.wso2.carbon.device.mgt.iot.feature/pom.xml index 7d94f16e36..409609eaf3 100644 --- a/features/iot-plugins-feature/iot-base-plugin-feature/org.wso2.carbon.device.mgt.iot.feature/pom.xml +++ b/features/iot-plugins-feature/iot-base-plugin-feature/org.wso2.carbon.device.mgt.iot.feature/pom.xml @@ -41,11 +41,6 @@ org.wso2.carbon.devicemgt-plugins org.wso2.carbon.device.mgt.iot - - org.wso2.carbon.devicemgt-plugins - org.wso2.carbon.device.mgt.iot.api - war - org.json.wso2 json @@ -119,25 +114,6 @@ - - copy - package - - copy - - - - - org.wso2.carbon.devicemgt-plugins - org.wso2.carbon.device.mgt.iot.api - war - true - ${project.build.directory}/maven-shared-archive-resources/webapps/ - common.war - - - - diff --git a/features/iot-plugins-feature/iot-base-plugin-feature/org.wso2.carbon.device.mgt.iot.feature/src/main/resources/p2.inf b/features/iot-plugins-feature/iot-base-plugin-feature/org.wso2.carbon.device.mgt.iot.feature/src/main/resources/p2.inf index 77c750196e..b493aa4afe 100644 --- a/features/iot-plugins-feature/iot-base-plugin-feature/org.wso2.carbon.device.mgt.iot.feature/src/main/resources/p2.inf +++ b/features/iot-plugins-feature/iot-base-plugin-feature/org.wso2.carbon.device.mgt.iot.feature/src/main/resources/p2.inf @@ -1,6 +1,4 @@ instructions.configure = \ -org.eclipse.equinox.p2.touchpoint.natives.mkdir(path:${installFolder}/../../deployment/server/webapps/);\ -org.eclipse.equinox.p2.touchpoint.natives.copy(source:${installFolder}/../features/org.wso2.carbon.device.mgt.iot_${feature.version}/webapps/,target:${installFolder}/../../deployment/server/webapps/,overwrite:true);\ org.eclipse.equinox.p2.touchpoint.natives.mkdir(path:${installFolder}/../../deployment/server/jaggeryapps/);\ org.eclipse.equinox.p2.touchpoint.natives.copy(source:${installFolder}/../features/org.wso2.carbon.device.mgt.iot_${feature.version}/jaggeryapps/,target:${installFolder}/../../deployment/server/jaggeryapps/,overwrite:true);\ org.eclipse.equinox.p2.touchpoint.natives.mkdir(path:${installFolder}/../../conf/iot/);\ diff --git a/features/mobile-plugins-feature/mobile-base-plugin-feature/org.wso2.carbon.device.mgt.mobile.feature/pom.xml b/features/mobile-plugins-feature/mobile-base-plugin-feature/org.wso2.carbon.device.mgt.mobile.feature/pom.xml index d92c4dcaac..f21daf1534 100644 --- a/features/mobile-plugins-feature/mobile-base-plugin-feature/org.wso2.carbon.device.mgt.mobile.feature/pom.xml +++ b/features/mobile-plugins-feature/mobile-base-plugin-feature/org.wso2.carbon.device.mgt.mobile.feature/pom.xml @@ -118,26 +118,6 @@ - - copy - package - - copy - - - - - org.wso2.carbon.devicemgt-plugins - org.wso2.carbon.device.mgt.mobile.api - war - true - ${project.build.directory}/maven-shared-archive-resources/webapps/ - - mdm-admin.war - - - - diff --git a/features/mobile-plugins-feature/mobile-base-plugin-feature/org.wso2.carbon.device.mgt.mobile.feature/src/main/resources/p2.inf b/features/mobile-plugins-feature/mobile-base-plugin-feature/org.wso2.carbon.device.mgt.mobile.feature/src/main/resources/p2.inf index 3beddd74aa..8bfeec726b 100644 --- a/features/mobile-plugins-feature/mobile-base-plugin-feature/org.wso2.carbon.device.mgt.mobile.feature/src/main/resources/p2.inf +++ b/features/mobile-plugins-feature/mobile-base-plugin-feature/org.wso2.carbon.device.mgt.mobile.feature/src/main/resources/p2.inf @@ -1,6 +1,4 @@ instructions.configure = \ -org.eclipse.equinox.p2.touchpoint.natives.mkdir(path:${installFolder}/../../deployment/server/webapps/);\ -org.eclipse.equinox.p2.touchpoint.natives.copy(source:${installFolder}/../features/org.wso2.carbon.device.mgt.mobile_${feature.version}/webapps/,target:${installFolder}/../../deployment/server/webapps/,overwrite:true);\ org.eclipse.equinox.p2.touchpoint.natives.copy(source:${installFolder}/../features/org.wso2.carbon.device.mgt.mobile_${feature.version}/conf/mobile-config.xml,target:${installFolder}/../../conf/mobile-config.xml,overwrite:true);\ org.eclipse.equinox.p2.touchpoint.natives.copy(source:${installFolder}/../features/org.wso2.carbon.device.mgt.mobile_${feature.version}/dbscripts/plugins/,target:${installFolder}/../../../dbscripts/cdm/plugins,overwrite:true);\ org.eclipse.equinox.p2.touchpoint.natives.mkdir(path:${installFolder}/../../deployment/server/jaggeryapps/);\