Merge branch 'master' of https://github.com/wso2/carbon-device-mgt into theme-migration

4.x.x
thusithakalugamage 8 years ago
commit ef646800fa

@ -288,12 +288,12 @@ public interface UserManagementService {
httpMethod = "GET",
value = "Get user list",
notes = "If you wish to get the details of all the users registered with EMM, you can do so "
+ "using the REST API",
+ "using this REST API",
tags = "User Management")
@ApiResponses(value = {
@ApiResponse(
code = 200,
message = "OK. \n Successfully fetched the requested role.",
message = "OK. \n Successfully fetched the requested users.",
response = BasicUserInfoList.class,
responseHeaders = {
@ResponseHeader(
@ -343,6 +343,36 @@ public interface UserManagementService {
required = false)
@QueryParam("limit") int limit);
@GET
@Path("/count")
@ApiOperation(
produces = MediaType.APPLICATION_JSON,
httpMethod = "GET",
value = "Get user count",
notes = "If you wish to get the user count registered with EMM, you can do so using this REST API",
tags = "User Management")
@ApiResponses(value = {
@ApiResponse(
code = 200,
message = "OK. \n Successfully fetched the user count.",
response = BasicUserInfoList.class,
responseHeaders = {
@ResponseHeader(
name = "Content-Type",
description = "The content type of the body")
}),
@ApiResponse(
code = 406,
message = "Not Acceptable.\n The requested media type is not supported",
response = ErrorResponse.class),
@ApiResponse(
code = 500,
message = "Internal Server Error. \n Server error occurred while fetching the user list.",
response = ErrorResponse.class)
})
@Permission(name = "View Users", permission = "/device-mgt/users/view")
Response getUserCount();
@GET
@Path("/search/usernames")
@ApiOperation(

@ -316,6 +316,26 @@ public class UserManagementServiceImpl implements UserManagementService {
}
}
@GET
@Path("/count")
@Override
public Response getUserCount() {
if (log.isDebugEnabled()) {
log.debug("Getting the user count");
}
try {
UserStoreManager userStoreManager = DeviceMgtAPIUtils.getUserStoreManager();
int userCount = userStoreManager.listUsers("*", -1).length;
return Response.status(Response.Status.OK).entity(userCount).build();
} catch (UserStoreException e) {
String msg = "Error occurred while retrieving the user count.";
log.error(msg, e);
return Response.serverError().entity(
new ErrorResponse.ErrorResponseBuilder().setMessage(msg).build()).build();
}
}
@GET
@Path("/search/usernames")
@Override

@ -40,7 +40,7 @@ deviceModule = function () {
// var deviceCloudService = devicemgtProps["httpsURL"] + "/common/device_manager";
/**
/**
* Only GET method is implemented for now since there are no other type of methods used this method.
* @param url - URL to call the backend without the host
* @param method - HTTP Method (GET, POST)
@ -273,6 +273,9 @@ deviceModule = function () {
deviceObject[constants["DEVICE_PROPERTIES"]] = properties;
response["content"] = deviceObject;
return response;
} else if (backendResponse.status == 401) {
response["status"] = "unauthorized";
return response;
} else {
response["status"] = "error";
return response;

@ -121,48 +121,49 @@
</div>
<div id="remove-certificate-success-content" class="hide">
<div class="content">
<div class="row">
<div class="col-lg-5 col-md-6 col-centered">
<h3>Done. Certificate was successfully removed.</h3>
<div class="buttons">
<a href="#" id="remove-certificate-success-link" class="btn-operations">
Ok
</a>
<div class="modal-header">
<h3 class="pull-left modal-title">Done. Certificate was successfully removed.</h3>
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><i class="fw fw-cancel"></i></button>
</div>
<div class="modal-body add-margin-top-2x add-margin-bottom-2x">
</div>
<div class="modal-footer">
<div class="buttons">
</div>
</div>
</div>
<div id="remove-certificate-error-content" class="hide">
<div class="content">
<div class="row">
<div class="col-lg-5 col-md-6 col-centered">
<h3>An unexpected error occurred. Please try again later.</h3>
<div class="buttons">
<a href="#" id="remove-certificate-error-link" class="btn-operations">
Ok
</a>
<div class="modal-header">
<h3 class="pull-left modal-title">An unexpected error occurred. Please try again later.</h3>
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><i class="fw fw-cancel"></i></button>
</div>
<div class="modal-body add-margin-top-2x add-margin-bottom-2x">
</div>
<div class="modal-footer">
<div class="buttons">
</div>
</div>
</div>
<div id="errorCertificateView" class="hide">
<div class="content">
<div class="row">
<div class="col-lg-5 col-md-6 col-centered">
<h3>
<div class="modal-header">
<h3 class="pull-left modal-title">
<span class="fw-stack">
<i class="fw fw-ring fw-stack-2x"></i>
<i class="fw fw-error fw-stack-1x"></i>
</span>
Unauthorized action!
</h3>
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><i class="fw fw-cancel"></i></button>
</div>
<div class="modal-body add-margin-top-2x add-margin-bottom-2x">
</div>
<div class="modal-footer">
<div class="buttons">
</div>
</div>
</div>

@ -3,7 +3,8 @@ CREATE TABLE DM_DEVICE_TYPE (
NAME VARCHAR(300) DEFAULT NULL,
PROVIDER_TENANT_ID INTEGER NULL,
SHARED_WITH_ALL_TENANTS BIT NOT NULL DEFAULT 0,
PRIMARY KEY (ID)
PRIMARY KEY (ID),
CONSTRAINT DEVICE_TYPE_NAME UNIQUE(NAME)
);
CREATE INDEX IDX_DEVICE_TYPE ON DM_DEVICE_TYPE (NAME);
@ -122,12 +123,12 @@ CREATE TABLE DM_PROFILE (
ID INTEGER IDENTITY(1,1) NOT NULL,
PROFILE_NAME VARCHAR(45) NOT NULL ,
TENANT_ID INTEGER NOT NULL ,
DEVICE_TYPE_ID INTEGER NOT NULL ,
DEVICE_TYPE VARCHAR(300) NOT NULL ,
CREATED_TIME DATETIME NOT NULL ,
UPDATED_TIME DATETIME NOT NULL ,
PRIMARY KEY (ID) ,
CONSTRAINT DM_PROFILE_DEVICE_TYPE FOREIGN KEY (DEVICE_TYPE_ID) REFERENCES
DM_DEVICE_TYPE (ID) ON DELETE NO ACTION ON UPDATE NO ACTION
CONSTRAINT DM_PROFILE_DEVICE_TYPE FOREIGN KEY (DEVICE_TYPE) REFERENCES
DM_DEVICE_TYPE (NAME) ON DELETE NO ACTION ON UPDATE NO ACTION
);
CREATE TABLE DM_POLICY (

Loading…
Cancel
Save