mirror of
https://repository.entgra.net/community/device-mgt-plugins.git
synced 2025-09-16 23:42:15 +00:00
Merge branch 'master' of https://github.com/geethkokila/product-cdm
# Please enter a commit message to explain why this merge is necessary, # especially if it merges an updated upstream into a topic branch. # # Lines starting with '#' will be ignored, and an empty message aborts # the commit.
This commit is contained in:
commit
8d67673198
@ -20,10 +20,19 @@ package org.wso2.carbon.policy.mgt.common;
|
||||
|
||||
public class Feature {
|
||||
|
||||
private int id;
|
||||
private String code;
|
||||
private String name;
|
||||
private Object attribute;
|
||||
|
||||
public int getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(int id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
@ -63,4 +63,19 @@ public class PolicyManagement implements PolicyManagerService {
|
||||
public Policy getPolicyOfRole(String roleName) throws FeatureManagementException, PolicyManagementException {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isPolicyAvailableForDevice(String deviceId, String deviceType) throws PolicyManagementException {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isPolicyUsed(String deviceId, String deviceType) throws PolicyManagementException {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPolicyUsed(String deviceId, String deviceType, Policy policy) throws PolicyManagementException {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -0,0 +1,38 @@
|
||||
/*
|
||||
* Copyright (c) 2014 WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. licenses this file to you under the Apache License,
|
||||
* Version 2.0 (the "License"); you may not use this file except
|
||||
* in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
|
||||
package org.wso2.carbon.policy.mgt.common.spi;
|
||||
|
||||
import org.wso2.carbon.policy.mgt.common.Feature;
|
||||
import org.wso2.carbon.policy.mgt.common.FeatureManagementException;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface FeatureManagerService {
|
||||
|
||||
void addFeature(Feature feature) throws FeatureManagementException;
|
||||
|
||||
void editFeature(Feature feature) throws FeatureManagementException;
|
||||
|
||||
void removeFeature(int featureId) throws FeatureManagementException;
|
||||
|
||||
List<Feature> getFeatures() throws FeatureManagementException;
|
||||
|
||||
List<Feature> getFeaturesOfPolicy(int policyId) throws FeatureManagementException;
|
||||
}
|
||||
@ -30,6 +30,7 @@ public interface PolicyManagerService {
|
||||
|
||||
/**
|
||||
* This method adds a policy to the platform
|
||||
*
|
||||
* @param policy
|
||||
* @return primary key (generated key)
|
||||
*/
|
||||
@ -38,6 +39,7 @@ public interface PolicyManagerService {
|
||||
|
||||
/**
|
||||
* This method adds a policy per device which should be implemented by the related plugins.
|
||||
*
|
||||
* @param deviceId
|
||||
* @param deviceType
|
||||
* @param policy
|
||||
@ -48,15 +50,17 @@ public interface PolicyManagerService {
|
||||
|
||||
/**
|
||||
* This method adds a policy to device type by the related device type plugins.
|
||||
*
|
||||
* @param deviceType
|
||||
* @param policy
|
||||
* @return primary key (generated key)
|
||||
*/
|
||||
|
||||
int addPolicyToDeviceType(String deviceType,Policy policy) throws FeatureManagementException, PolicyManagementException;
|
||||
int addPolicyToDeviceType(String deviceType, Policy policy) throws FeatureManagementException, PolicyManagementException;
|
||||
|
||||
/**
|
||||
* This method adds the policy to specific role.
|
||||
*
|
||||
* @param roleName
|
||||
* @param policy
|
||||
* @return primary key (generated key)
|
||||
@ -65,30 +69,34 @@ public interface PolicyManagerService {
|
||||
|
||||
/**
|
||||
* This method returns the policy of whole platform
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
|
||||
Policy getPolicy();
|
||||
Policy getPolicy();
|
||||
|
||||
/**
|
||||
* This method gives the device specific policy.
|
||||
*
|
||||
* @param deviceId
|
||||
* @param deviceType
|
||||
* @return Policy
|
||||
* @return Policy
|
||||
*/
|
||||
|
||||
Policy getPolicyOfDevice(String deviceId, String deviceType) throws FeatureManagementException, PolicyManagementException;
|
||||
|
||||
/**
|
||||
* This method returns the device type specific policy.
|
||||
*
|
||||
* @param deviceType
|
||||
* @return Policy
|
||||
* @return Policy
|
||||
*/
|
||||
|
||||
Policy getPolicyOfDeviceType(String deviceType) throws FeatureManagementException, PolicyManagementException;
|
||||
|
||||
/**
|
||||
* This method returns the role specific policy.
|
||||
*
|
||||
* @param roleName
|
||||
* @return
|
||||
*/
|
||||
@ -96,4 +104,11 @@ public interface PolicyManagerService {
|
||||
Policy getPolicyOfRole(String roleName) throws FeatureManagementException, PolicyManagementException;
|
||||
|
||||
|
||||
boolean isPolicyAvailableForDevice(String deviceId, String deviceType) throws PolicyManagementException;
|
||||
|
||||
|
||||
boolean isPolicyUsed(String deviceId, String deviceType) throws PolicyManagementException;
|
||||
|
||||
|
||||
void setPolicyUsed(String deviceId, String deviceType, Policy policy) throws PolicyManagementException;
|
||||
}
|
||||
|
||||
@ -16,7 +16,6 @@
|
||||
|
||||
package cdm.api.android;
|
||||
|
||||
|
||||
import com.google.gson.JsonObject;
|
||||
|
||||
import javax.ws.rs.POST;
|
||||
@ -31,9 +30,10 @@ public class Authentication {
|
||||
@POST
|
||||
@Path("/device/")
|
||||
@Produces("application/json")
|
||||
public String authenticateDevice(@FormParam("username") String username, @FormParam("password") String password) {
|
||||
public String authenticateDevice(@FormParam("username") String username,
|
||||
@FormParam("password") String password) {
|
||||
JsonObject result = new JsonObject();
|
||||
result.addProperty("senderId","jwwfowrjwqporqwrpqworpq");
|
||||
result.addProperty("senderId", "jwwfowrjwqporqwrpqworpq");
|
||||
return result.toString();
|
||||
}
|
||||
|
||||
@ -42,10 +42,4 @@ public class Authentication {
|
||||
public String getLicense() {
|
||||
return "License Agreement";
|
||||
}
|
||||
|
||||
@POST
|
||||
@Path("/device/enroll")
|
||||
public Response enrollDevice() {
|
||||
return Response.status(201).entity("Registration Successful").build();
|
||||
}
|
||||
}
|
||||
|
||||
@ -17,8 +17,9 @@
|
||||
package cdm.api.android;
|
||||
|
||||
import cdm.api.android.util.AndroidAPIUtils;
|
||||
import cdm.api.android.util.AndroidConstants;
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.JsonObject;
|
||||
import org.apache.commons.httpclient.HttpStatus;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
||||
@ -26,7 +27,6 @@ import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceManagementConstants;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceManagementException;
|
||||
import org.wso2.carbon.device.mgt.core.service.DeviceManagementService;
|
||||
import org.wso2.carbon.utils.multitenancy.MultitenantConstants;
|
||||
|
||||
import javax.ws.rs.*;
|
||||
import javax.ws.rs.core.Response;
|
||||
@ -46,22 +46,18 @@ public class Device {
|
||||
String msg = "";
|
||||
DeviceManagementService dmService;
|
||||
try {
|
||||
PrivilegedCarbonContext.startTenantFlow();
|
||||
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
||||
ctx.setTenantDomain(MultitenantConstants.SUPER_TENANT_DOMAIN_NAME);
|
||||
ctx.setTenantId(MultitenantConstants.SUPER_TENANT_ID);
|
||||
dmService = (DeviceManagementService) ctx
|
||||
.getOSGiService(DeviceManagementService.class, null);
|
||||
dmService = AndroidAPIUtils.getDeviceManagementService();
|
||||
} finally {
|
||||
PrivilegedCarbonContext.endTenantFlow();
|
||||
}
|
||||
try {
|
||||
if(dmService!=null){
|
||||
result = dmService.getAllDevices(DeviceManagementConstants.MobileDeviceTypes.MOBILE_DEVICE_TYPE_ANDROID);
|
||||
if (dmService != null) {
|
||||
result = dmService.getAllDevices(
|
||||
DeviceManagementConstants.MobileDeviceTypes.MOBILE_DEVICE_TYPE_ANDROID);
|
||||
status = 1;
|
||||
}else{
|
||||
} else {
|
||||
status = -1;
|
||||
msg = "Device Manager service not available";
|
||||
msg = AndroidConstants.Messages.DEVICE_MANAGER_SERVICE_NOT_AVAILABLE;
|
||||
}
|
||||
|
||||
} catch (DeviceManagementException e) {
|
||||
@ -71,12 +67,14 @@ public class Device {
|
||||
}
|
||||
switch (status) {
|
||||
case 1:
|
||||
String response = new Gson().toJson(result);
|
||||
return Response.status(200).entity(response).build();
|
||||
if(result!=null){
|
||||
String response = new Gson().toJson(result);
|
||||
return Response.status(HttpStatus.SC_OK).entity(response).build();
|
||||
}
|
||||
case -1:
|
||||
return Response.status(500).entity(msg).build();
|
||||
return Response.status(HttpStatus.SC_INTERNAL_SERVER_ERROR).entity(msg).build();
|
||||
}
|
||||
return Response.status(400).entity("Unable to fetch device list").build();
|
||||
return Response.status(HttpStatus.SC_NOT_FOUND).entity("Unable to fetch device list").build();
|
||||
}
|
||||
|
||||
@GET
|
||||
@ -85,25 +83,21 @@ public class Device {
|
||||
int status = 0;
|
||||
String msg = "";
|
||||
DeviceManagementService dmService;
|
||||
org.wso2.carbon.device.mgt.common.Device device = new org.wso2.carbon.device.mgt.common.Device();
|
||||
org.wso2.carbon.device.mgt.common.Device device =
|
||||
new org.wso2.carbon.device.mgt.common.Device();
|
||||
try {
|
||||
PrivilegedCarbonContext.startTenantFlow();
|
||||
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
||||
ctx.setTenantDomain(MultitenantConstants.SUPER_TENANT_DOMAIN_NAME);
|
||||
ctx.setTenantId(MultitenantConstants.SUPER_TENANT_ID);
|
||||
dmService = (DeviceManagementService) ctx
|
||||
.getOSGiService(DeviceManagementService.class, null);
|
||||
dmService = AndroidAPIUtils.getDeviceManagementService();
|
||||
} finally {
|
||||
PrivilegedCarbonContext.endTenantFlow();
|
||||
}
|
||||
DeviceIdentifier deviceIdentifier = AndroidAPIUtils.convertToDeviceIdentifierObject(id);
|
||||
try {
|
||||
if(dmService!=null){
|
||||
if (dmService != null) {
|
||||
device = dmService.getDevice(deviceIdentifier);
|
||||
status = 1;
|
||||
}else{
|
||||
} else {
|
||||
status = -1;
|
||||
msg = "Device Manager service not available";
|
||||
msg = AndroidConstants.Messages.DEVICE_MANAGER_SERVICE_NOT_AVAILABLE;
|
||||
}
|
||||
|
||||
} catch (DeviceManagementException e) {
|
||||
@ -113,12 +107,15 @@ public class Device {
|
||||
}
|
||||
switch (status) {
|
||||
case 1:
|
||||
String response = new Gson().toJson(device);
|
||||
return Response.status(200).entity(response).build();
|
||||
if(device!=null) {
|
||||
String response = new Gson().toJson(device);
|
||||
return Response.status(HttpStatus.SC_OK).entity(response).build();
|
||||
}
|
||||
break;
|
||||
case -1:
|
||||
return Response.status(500).entity(msg).build();
|
||||
return Response.status(HttpStatus.SC_INTERNAL_SERVER_ERROR).entity(msg).build();
|
||||
}
|
||||
return Response.status(400).entity("Unable to fetch device information").build();
|
||||
return Response.status(HttpStatus.SC_NOT_FOUND).entity("Unable to fetch device information").build();
|
||||
}
|
||||
|
||||
@PUT
|
||||
@ -129,23 +126,19 @@ public class Device {
|
||||
String msg = "";
|
||||
DeviceManagementService dmService;
|
||||
try {
|
||||
PrivilegedCarbonContext.startTenantFlow();
|
||||
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
||||
ctx.setTenantDomain(MultitenantConstants.SUPER_TENANT_DOMAIN_NAME);
|
||||
ctx.setTenantId(MultitenantConstants.SUPER_TENANT_ID);
|
||||
dmService = (DeviceManagementService) ctx
|
||||
.getOSGiService(DeviceManagementService.class, null);
|
||||
dmService = AndroidAPIUtils.getDeviceManagementService();
|
||||
} finally {
|
||||
PrivilegedCarbonContext.endTenantFlow();
|
||||
}
|
||||
org.wso2.carbon.device.mgt.common.Device device = AndroidAPIUtils.convertToDeviceObject(jsonPayload);
|
||||
org.wso2.carbon.device.mgt.common.Device device =
|
||||
AndroidAPIUtils.convertToDeviceObject(jsonPayload);
|
||||
try {
|
||||
if(dmService!=null){
|
||||
if (dmService != null) {
|
||||
result = dmService.updateDeviceInfo(device);
|
||||
status = 1;
|
||||
}else{
|
||||
} else {
|
||||
status = -1;
|
||||
msg = "Device Manager service not available";
|
||||
msg = AndroidConstants.Messages.DEVICE_MANAGER_SERVICE_NOT_AVAILABLE;
|
||||
}
|
||||
} catch (DeviceManagementException e) {
|
||||
msg = "Error occurred while modifying the device information";
|
||||
@ -155,12 +148,12 @@ public class Device {
|
||||
switch (status) {
|
||||
case 1:
|
||||
if (result) {
|
||||
return Response.status(200).entity("Device has modified").build();
|
||||
return Response.status(HttpStatus.SC_OK).entity("Device has modified").build();
|
||||
}
|
||||
break;
|
||||
case -1:
|
||||
return Response.status(500).entity(msg).build();
|
||||
return Response.status(HttpStatus.SC_INTERNAL_SERVER_ERROR).entity(msg).build();
|
||||
}
|
||||
return Response.status(400).entity("Update device has failed").build();
|
||||
return Response.status(HttpStatus.SC_NOT_MODIFIED).entity("Update device has failed").build();
|
||||
}
|
||||
}
|
||||
|
||||
@ -17,14 +17,15 @@
|
||||
package cdm.api.android;
|
||||
|
||||
import cdm.api.android.util.AndroidAPIUtils;
|
||||
import cdm.api.android.util.AndroidConstants;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.apache.commons.httpclient.HttpStatus;
|
||||
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.DeviceManagementException;
|
||||
import org.wso2.carbon.device.mgt.core.service.DeviceManagementService;
|
||||
import org.wso2.carbon.utils.multitenancy.MultitenantConstants;
|
||||
|
||||
import javax.ws.rs.*;
|
||||
import javax.ws.rs.core.Response;
|
||||
@ -43,25 +44,19 @@ public class Enrollment {
|
||||
String msg = "";
|
||||
DeviceManagementService dmService;
|
||||
try {
|
||||
PrivilegedCarbonContext.startTenantFlow();
|
||||
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
||||
ctx.setTenantDomain(MultitenantConstants.SUPER_TENANT_DOMAIN_NAME);
|
||||
ctx.setTenantId(MultitenantConstants.SUPER_TENANT_ID);
|
||||
dmService = (DeviceManagementService) ctx
|
||||
.getOSGiService(DeviceManagementService.class, null);
|
||||
dmService = AndroidAPIUtils.getDeviceManagementService();
|
||||
} finally {
|
||||
PrivilegedCarbonContext.endTenantFlow();
|
||||
}
|
||||
Device device = AndroidAPIUtils.convertToDeviceObject(jsonPayload);
|
||||
try {
|
||||
if(dmService!=null){
|
||||
if (dmService != null) {
|
||||
result = dmService.enrollDevice(device);
|
||||
status = 1;
|
||||
}else{
|
||||
} else {
|
||||
status = -1;
|
||||
msg = "Device Manager service not available";
|
||||
msg = AndroidConstants.Messages.DEVICE_MANAGER_SERVICE_NOT_AVAILABLE;
|
||||
}
|
||||
|
||||
} catch (DeviceManagementException e) {
|
||||
msg = "Error occurred while enrolling the device";
|
||||
log.error(msg, e);
|
||||
@ -70,13 +65,13 @@ public class Enrollment {
|
||||
switch (status) {
|
||||
case 1:
|
||||
if (result) {
|
||||
return Response.status(201).entity("Registration Successful").build();
|
||||
return Response.status(HttpStatus.SC_CREATED).entity("Device enrollment has succeeded").build();
|
||||
}
|
||||
break;
|
||||
case -1:
|
||||
return Response.status(500).entity(msg).build();
|
||||
return Response.status(HttpStatus.SC_INTERNAL_SERVER_ERROR).entity(msg).build();
|
||||
}
|
||||
return Response.status(400).entity("Registration Failed").build();
|
||||
return Response.status(HttpStatus.SC_BAD_REQUEST).entity("Device enrollment has Failed").build();
|
||||
}
|
||||
|
||||
@GET
|
||||
@ -87,23 +82,18 @@ public class Enrollment {
|
||||
String msg = "";
|
||||
DeviceManagementService dmService;
|
||||
try {
|
||||
PrivilegedCarbonContext.startTenantFlow();
|
||||
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
||||
ctx.setTenantDomain(MultitenantConstants.SUPER_TENANT_DOMAIN_NAME);
|
||||
ctx.setTenantId(MultitenantConstants.SUPER_TENANT_ID);
|
||||
dmService = (DeviceManagementService) ctx
|
||||
.getOSGiService(DeviceManagementService.class, null);
|
||||
dmService = AndroidAPIUtils.getDeviceManagementService();
|
||||
} finally {
|
||||
PrivilegedCarbonContext.endTenantFlow();
|
||||
}
|
||||
DeviceIdentifier deviceIdentifier = AndroidAPIUtils.convertToDeviceIdentifierObject(id);
|
||||
try {
|
||||
if(dmService!=null){
|
||||
if (dmService != null) {
|
||||
result = dmService.isEnrolled(deviceIdentifier);
|
||||
status = 1;
|
||||
}else{
|
||||
} else {
|
||||
status = -1;
|
||||
msg = "Device Manager service not available";
|
||||
msg = AndroidConstants.Messages.DEVICE_MANAGER_SERVICE_NOT_AVAILABLE;
|
||||
}
|
||||
} catch (DeviceManagementException e) {
|
||||
msg = "Error occurred while checking enrollment of the device";
|
||||
@ -113,40 +103,35 @@ public class Enrollment {
|
||||
switch (status) {
|
||||
case 1:
|
||||
if (result) {
|
||||
return Response.status(200).entity(result).build();
|
||||
return Response.status(HttpStatus.SC_OK).entity(result).build();
|
||||
}
|
||||
break;
|
||||
case -1:
|
||||
return Response.status(500).entity(msg).build();
|
||||
return Response.status(HttpStatus.SC_INTERNAL_SERVER_ERROR).entity(msg).build();
|
||||
}
|
||||
return Response.status(404).entity(result).build();
|
||||
return Response.status(HttpStatus.SC_NOT_FOUND).entity(result).build();
|
||||
}
|
||||
|
||||
@PUT
|
||||
@Path("{id}")
|
||||
public Response modifyEnrollment(@PathParam("id") String id,String jsonPayload) {
|
||||
public Response modifyEnrollment(@PathParam("id") String id, String jsonPayload) {
|
||||
boolean result = false;
|
||||
int status = 0;
|
||||
String msg = "";
|
||||
DeviceManagementService dmService;
|
||||
try {
|
||||
PrivilegedCarbonContext.startTenantFlow();
|
||||
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
||||
ctx.setTenantDomain(MultitenantConstants.SUPER_TENANT_DOMAIN_NAME);
|
||||
ctx.setTenantId(MultitenantConstants.SUPER_TENANT_ID);
|
||||
dmService = (DeviceManagementService) ctx
|
||||
.getOSGiService(DeviceManagementService.class, null);
|
||||
dmService = AndroidAPIUtils.getDeviceManagementService();
|
||||
} finally {
|
||||
PrivilegedCarbonContext.endTenantFlow();
|
||||
}
|
||||
Device device = AndroidAPIUtils.convertToDeviceObject(jsonPayload);
|
||||
try {
|
||||
if(dmService!=null){
|
||||
if (dmService != null) {
|
||||
result = dmService.modifyEnrollment(device);
|
||||
status = 1;
|
||||
}else{
|
||||
} else {
|
||||
status = -1;
|
||||
msg = "Device Manager service not available";
|
||||
msg = AndroidConstants.Messages.DEVICE_MANAGER_SERVICE_NOT_AVAILABLE;
|
||||
}
|
||||
} catch (DeviceManagementException e) {
|
||||
msg = "Error occurred while modifying enrollment of the device";
|
||||
@ -156,13 +141,13 @@ public class Enrollment {
|
||||
switch (status) {
|
||||
case 1:
|
||||
if (result) {
|
||||
return Response.status(200).entity("Device information modified").build();
|
||||
return Response.status(HttpStatus.SC_OK).entity("Enrollment information has modified").build();
|
||||
}
|
||||
break;
|
||||
case -1:
|
||||
return Response.status(500).entity(msg).build();
|
||||
return Response.status(HttpStatus.SC_INTERNAL_SERVER_ERROR).entity(msg).build();
|
||||
}
|
||||
return Response.status(400).entity("Update enrollment failed").build();
|
||||
return Response.status(HttpStatus.SC_NOT_MODIFIED).entity("Update enrollment has failed").build();
|
||||
}
|
||||
|
||||
@DELETE
|
||||
@ -173,23 +158,18 @@ public class Enrollment {
|
||||
String msg = "";
|
||||
DeviceManagementService dmService;
|
||||
try {
|
||||
PrivilegedCarbonContext.startTenantFlow();
|
||||
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
||||
ctx.setTenantDomain(MultitenantConstants.SUPER_TENANT_DOMAIN_NAME);
|
||||
ctx.setTenantId(MultitenantConstants.SUPER_TENANT_ID);
|
||||
dmService = (DeviceManagementService) ctx
|
||||
.getOSGiService(DeviceManagementService.class, null);
|
||||
dmService = AndroidAPIUtils.getDeviceManagementService();
|
||||
} finally {
|
||||
PrivilegedCarbonContext.endTenantFlow();
|
||||
}
|
||||
DeviceIdentifier deviceIdentifier = AndroidAPIUtils.convertToDeviceIdentifierObject(id);
|
||||
try {
|
||||
if(dmService!=null){
|
||||
if (dmService != null) {
|
||||
result = dmService.disenrollDevice(deviceIdentifier);
|
||||
status = 1;
|
||||
}else{
|
||||
} else {
|
||||
status = -1;
|
||||
msg = "Device Manager service not available";
|
||||
msg = AndroidConstants.Messages.DEVICE_MANAGER_SERVICE_NOT_AVAILABLE;
|
||||
}
|
||||
} catch (DeviceManagementException e) {
|
||||
msg = "Error occurred while disenrolling the device";
|
||||
@ -199,12 +179,12 @@ public class Enrollment {
|
||||
switch (status) {
|
||||
case 1:
|
||||
if (result) {
|
||||
return Response.status(200).entity(result).build();
|
||||
return Response.status(HttpStatus.SC_OK).entity(result).build();
|
||||
}
|
||||
break;
|
||||
case -1:
|
||||
return Response.status(500).entity(msg).build();
|
||||
return Response.status(HttpStatus.SC_INTERNAL_SERVER_ERROR).entity(msg).build();
|
||||
}
|
||||
return Response.status(404).entity("Device not found").build();
|
||||
return Response.status(HttpStatus.SC_NOT_FOUND).entity("Device not found").build();
|
||||
}
|
||||
}
|
||||
|
||||
@ -19,7 +19,10 @@ package cdm.api.android.util;
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.google.gson.JsonObject;
|
||||
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
||||
import org.wso2.carbon.device.mgt.common.*;
|
||||
import org.wso2.carbon.device.mgt.core.service.DeviceManagementService;
|
||||
import org.wso2.carbon.utils.multitenancy.MultitenantConstants;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
@ -112,4 +115,16 @@ public class AndroidAPIUtils {
|
||||
identifier.setType(DeviceManagementConstants.MobileDeviceTypes.MOBILE_DEVICE_TYPE_ANDROID);
|
||||
return identifier;
|
||||
}
|
||||
|
||||
|
||||
public static DeviceManagementService getDeviceManagementService() {
|
||||
DeviceManagementService dmService;
|
||||
PrivilegedCarbonContext.startTenantFlow();
|
||||
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
||||
ctx.setTenantDomain(MultitenantConstants.SUPER_TENANT_DOMAIN_NAME);
|
||||
ctx.setTenantId(MultitenantConstants.SUPER_TENANT_ID);
|
||||
dmService = (DeviceManagementService) ctx
|
||||
.getOSGiService(DeviceManagementService.class, null);
|
||||
return dmService;
|
||||
}
|
||||
}
|
||||
|
||||
@ -45,4 +45,12 @@ public final class AndroidConstants {
|
||||
public static final String DEVICE_PROPERTIES_KEY = "properties";
|
||||
public static final String DEVICE_FEATURES_KEY = "features";
|
||||
}
|
||||
|
||||
public final class Messages{
|
||||
private Messages(){
|
||||
throw new AssertionError();
|
||||
}
|
||||
public static final String DEVICE_MANAGER_SERVICE_NOT_AVAILABLE =
|
||||
"Device Manager service not available";
|
||||
}
|
||||
}
|
||||
|
||||
@ -105,6 +105,8 @@
|
||||
|
||||
<mkdir dir="${tempdir}"/>
|
||||
<mkdir dir="${tempdir}/wso2cdm-${project.version}/repository/components"/>
|
||||
<mkdir dir="${tempdir}/wso2cdm-${project.version}/repository/deployment/server"/>
|
||||
<mkdir dir="${tempdir}/wso2cdm-${project.version}/repository/deployment/server/webapps"/>
|
||||
<unzip dest="${tempdir}">
|
||||
<fileset dir="target">
|
||||
<include name="wso2cdm-${project.version}.zip"/>
|
||||
@ -137,7 +139,7 @@
|
||||
og4j.logger.net.sf.ehcache=ERROR
|
||||
</concat>
|
||||
|
||||
<!--<delete file="target/wso2cdm-${project.version}.zip"/>-->
|
||||
<delete file="target/wso2cdm-${project.version}.zip"/>
|
||||
<delete dir="${tempdir}"/>
|
||||
</tasks>
|
||||
</configuration>
|
||||
@ -147,6 +149,8 @@
|
||||
<phase>package</phase>
|
||||
<configuration>
|
||||
<tasks>
|
||||
<mkdir dir="target/wso2carbon-core-${project.version}/repository/deployment/server/webapps"/>
|
||||
|
||||
<!--<copy todir="target/wso2carbon-core-${carbon.kernel.version}/modules"
|
||||
overwrite="true">
|
||||
<fileset dir="src/repository/modules"></fileset>
|
||||
|
||||
@ -40,15 +40,6 @@
|
||||
</includes>
|
||||
<fileMode>755</fileMode>
|
||||
</fileSet>
|
||||
<!-- <fileSet>
|
||||
<directory>
|
||||
../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/dbscripts/identity/
|
||||
</directory>
|
||||
<outputDirectory>wso2cdm-${project.version}/dbscripts/identity</outputDirectory>
|
||||
<includes>
|
||||
<include>**/**.sql</include>
|
||||
</includes>
|
||||
</fileSet>-->
|
||||
|
||||
<!--Multitenancy related file -->
|
||||
<fileSet>
|
||||
@ -98,11 +89,11 @@
|
||||
<fileMode>755</fileMode>
|
||||
</fileSet>
|
||||
<!-- copy the landing page webapp -->
|
||||
<fileSet>
|
||||
<directory>src/repository/resources/stratos_root</directory>
|
||||
<outputDirectory>wso2cdm-${project.version}/repository/deployment/server/webapps/STRATOS_ROOT</outputDirectory>
|
||||
<fileMode>755</fileMode>
|
||||
</fileSet>
|
||||
<!-- <fileSet>
|
||||
<directory>src/repository/resources/stratos_root</directory>
|
||||
<outputDirectory>wso2cdm-${project.version}/repository/deployment/server/webapps/STRATOS_ROOT</outputDirectory>
|
||||
<fileMode>755</fileMode>
|
||||
</fileSet>-->
|
||||
<fileSet>
|
||||
<directory>../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/modules</directory>
|
||||
<outputDirectory>${pom.artifactId}-${project.version}/modules/</outputDirectory>
|
||||
@ -110,50 +101,14 @@
|
||||
<include>*/**</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
<!-- <fileSet>
|
||||
<directory>
|
||||
../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/repository/deployment/server/jaggeryapps
|
||||
</directory>
|
||||
<outputDirectory>${pom.artifactId}-${project.version}/repository/deployment/server/jaggeryapps/
|
||||
</outputDirectory>
|
||||
<includes>
|
||||
<include>*/**</include>
|
||||
</includes>
|
||||
<excludes>
|
||||
<exclude>**/social/</exclude>
|
||||
<exclude>**/fakepublisher/</exclude>
|
||||
<exclude>**/fakestore/</exclude>
|
||||
</excludes>
|
||||
</fileSet>-->
|
||||
|
||||
<!--copy jaxrs web app for OAuth feature-->
|
||||
<!-- <fileSet>
|
||||
<directory>
|
||||
../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/repository/deployment/server/webapps
|
||||
</directory>
|
||||
<outputDirectory>${pom.artifactId}-${project.version}/repository/deployment/server/webapps</outputDirectory>
|
||||
<includes>
|
||||
<include>oauth2.war</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
|
||||
<!–copy web app for application authentication feature –>
|
||||
<fileSet>
|
||||
<directory>
|
||||
../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/repository/deployment/server/webapps
|
||||
</directory>
|
||||
<outputDirectory>${pom.artifactId}-${project.version}/repository/deployment/server/webapps</outputDirectory>
|
||||
<includes>
|
||||
<include>authenticationendpoint.war</include>
|
||||
</includes>
|
||||
</fileSet>-->
|
||||
<fileSet>
|
||||
<directory>src/repository/conf</directory>
|
||||
<outputDirectory>wso2cdm-${project.version}/repository/conf</outputDirectory>
|
||||
<includes>
|
||||
<include>**/api-manager.xml</include>
|
||||
<include>**/sso-idp-config.xml</include>
|
||||
<!-- <include>**/emm-config.xml</include>-->
|
||||
<!-- <include>**/emm-config.xml</include>-->
|
||||
</includes>
|
||||
</fileSet>
|
||||
<fileSet>
|
||||
@ -239,35 +194,42 @@
|
||||
</dependencySets>
|
||||
|
||||
<files>
|
||||
<!-- <file>
|
||||
<source>
|
||||
../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/repository/conf/tomcat/webapp-classloading.xml
|
||||
</source>
|
||||
<outputDirectory>wso2cdm-${project.version}/repository/conf/tomcat</outputDirectory>
|
||||
<filtered>true</filtered>
|
||||
<fileMode>644</fileMode>
|
||||
</file>
|
||||
|
||||
<file>
|
||||
<source>
|
||||
../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/repository/conf/tomcat/webapp-classloading-environments.xml
|
||||
</source>
|
||||
<outputDirectory>wso2cdm-${project.version}/repository/conf/tomcat</outputDirectory>
|
||||
<source>../agents/android/jax-rs/target/cdm-android-api.war</source>
|
||||
<outputDirectory>wso2cdm-${pom.version}/repository/deployment/server/webapps</outputDirectory>
|
||||
<filtered>true</filtered>
|
||||
<fileMode>644</fileMode>
|
||||
</file>-->
|
||||
<fileMode>755</fileMode>
|
||||
</file>
|
||||
<!-- <file>
|
||||
<source>
|
||||
../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/repository/conf/tomcat/webapp-classloading.xml
|
||||
</source>
|
||||
<outputDirectory>wso2cdm-${project.version}/repository/conf/tomcat</outputDirectory>
|
||||
<filtered>true</filtered>
|
||||
<fileMode>644</fileMode>
|
||||
</file>
|
||||
<file>
|
||||
<source>
|
||||
../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/repository/conf/tomcat/webapp-classloading-environments.xml
|
||||
</source>
|
||||
<outputDirectory>wso2cdm-${project.version}/repository/conf/tomcat</outputDirectory>
|
||||
<filtered>true</filtered>
|
||||
<fileMode>644</fileMode>
|
||||
</file>-->
|
||||
<file>
|
||||
<source>src/repository/conf/tomcat/context.xml</source>
|
||||
<outputDirectory>wso2cdm-${project.version}/repository/conf/tomcat</outputDirectory>
|
||||
<filtered>true</filtered>
|
||||
<fileMode>644</fileMode>
|
||||
</file>
|
||||
<!-- <file>
|
||||
<source>../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/repository/conf/event-broker.xml
|
||||
</source>
|
||||
<outputDirectory>wso2cdm-${project.version}/repository/conf/</outputDirectory>
|
||||
<filtered>true</filtered>
|
||||
<fileMode>644</fileMode>
|
||||
</file>-->
|
||||
<!-- <file>
|
||||
<source>../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/repository/conf/event-broker.xml
|
||||
</source>
|
||||
<outputDirectory>wso2cdm-${project.version}/repository/conf/</outputDirectory>
|
||||
<filtered>true</filtered>
|
||||
<fileMode>644</fileMode>
|
||||
</file>-->
|
||||
|
||||
<file>
|
||||
<source>INSTALL.txt</source>
|
||||
@ -307,18 +269,14 @@
|
||||
</file>
|
||||
|
||||
<!--copy default xacml policy to repository/resources/security -->
|
||||
<!-- <file>
|
||||
<source>src/repository/resources/policies/xacml/default/admin.xml</source>
|
||||
<outputDirectory>wso2cdm-${project.version}/repository/resources/security/policies/xacml/default
|
||||
</outputDirectory>
|
||||
<filtered>true</filtered>
|
||||
</file>-->
|
||||
<!-- <file>
|
||||
<source>src/repository/resources/policies/xacml/default/admin.xml</source>
|
||||
<outputDirectory>wso2cdm-${project.version}/repository/resources/security/policies/xacml/default
|
||||
</outputDirectory>
|
||||
<filtered>true</filtered>
|
||||
</file>-->
|
||||
|
||||
|
||||
<file>
|
||||
<source>target/wso2carbon-core-${carbon.kernel.version}/repository/conf/log4j.properties</source>
|
||||
<outputDirectory>wso2cdm-${project.version}/repository/conf/</outputDirectory>
|
||||
<filtered>true</filtered>
|
||||
</file>
|
||||
<file>
|
||||
<source>src/repository/conf/multitenancy/cloud-services-desc.xml</source>
|
||||
<outputDirectory>wso2cdm-${project.version}/repository/conf/multitenancy/</outputDirectory>
|
||||
@ -354,15 +312,18 @@
|
||||
</file>
|
||||
|
||||
<file>
|
||||
<source>../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/repository/conf/tomcat/webapp-classloading.xml</source>
|
||||
<source>
|
||||
../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/repository/conf/tomcat/webapp-classloading.xml
|
||||
</source>
|
||||
<outputDirectory>${pom.artifactId}-${pom.version}/repository/conf/tomcat</outputDirectory>
|
||||
<filtered>true</filtered>
|
||||
<fileMode>644</fileMode>
|
||||
</file>
|
||||
|
||||
<!--cdm config file-->
|
||||
<!--cdm config file-->
|
||||
<file>
|
||||
<source>../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/repository/conf/cdm-config.xml</source>
|
||||
<source>../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/repository/conf/cdm-config.xml
|
||||
</source>
|
||||
<outputDirectory>${pom.artifactId}-${pom.version}/repository/conf</outputDirectory>
|
||||
<filtered>true</filtered>
|
||||
<fileMode>644</fileMode>
|
||||
@ -370,19 +331,21 @@
|
||||
|
||||
|
||||
<file>
|
||||
<source>../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/repository/conf/tomcat/webapp-classloading-environments.xml</source>
|
||||
<source>
|
||||
../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/repository/conf/tomcat/webapp-classloading-environments.xml
|
||||
</source>
|
||||
<outputDirectory>${pom.artifactId}-${pom.version}/repository/conf/tomcat</outputDirectory>
|
||||
<filtered>true</filtered>
|
||||
<fileMode>644</fileMode>
|
||||
</file>
|
||||
|
||||
<!-- nTask Component -->
|
||||
<!-- <file>
|
||||
<source>
|
||||
../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/repository/conf/etc/tasks-config.xml
|
||||
</source>
|
||||
<outputDirectory>wso2cdm-${project.version}/repository/conf/etc</outputDirectory>
|
||||
</file>-->
|
||||
<!-- <file>
|
||||
<source>
|
||||
../p2-profile-gen/target/wso2carbon-core-${carbon.kernel.version}/repository/conf/etc/tasks-config.xml
|
||||
</source>
|
||||
<outputDirectory>wso2cdm-${project.version}/repository/conf/etc</outputDirectory>
|
||||
</file>-->
|
||||
|
||||
<!-- End - nTask Component -->
|
||||
</files>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user