use of org.alfresco.service.cmr.admin.RepoUsageStatus in project alfresco-remote-api by Alfresco.
the class RepoUsageGet method executeImpl.
@Override
protected Map<String, Object> executeImpl(final WebScriptRequest req, final Status status, final Cache cache) {
// Runas system to obtain the info
RunAsWork<Map<String, Object>> runAs = new RunAsWork<Map<String, Object>>() {
@Override
public Map<String, Object> doWork() throws Exception {
Map<String, Object> model = new HashMap<String, Object>(7);
RepoUsageStatus usageStatus = repoAdminService.getUsageStatus();
RepoUsage usage = usageStatus.getUsage();
putUsageInModel(model, usage, false);
// Add usage messages
model.put(JSON_KEY_LEVEL, usageStatus.getLevel().ordinal());
model.put(JSON_KEY_WARNINGS, usageStatus.getWarnings());
model.put(JSON_KEY_ERRORS, usageStatus.getErrors());
// Done
if (logger.isDebugEnabled()) {
logger.debug("Result: \n\tRequest: " + req + "\n\tModel: " + model);
}
return model;
}
};
return AuthenticationUtil.runAs(runAs, AuthenticationUtil.getSystemUserName());
}
use of org.alfresco.service.cmr.admin.RepoUsageStatus in project alfresco-remote-api by Alfresco.
the class AdminWebScriptTest method testGetUsage.
public void testGetUsage() throws Exception {
RepoUsageStatus usageStatus = repoAdminService.getUsageStatus();
RepoUsage usage = usageStatus.getUsage();
LicenseDescriptor licenseDescriptor = descriptorService.getLicenseDescriptor();
// might be null
Date validUntil = (licenseDescriptor == null) ? null : licenseDescriptor.getValidUntil();
Integer checkLevel = new Integer(usageStatus.getLevel().ordinal());
String url = "/api/admin/usage";
TestWebScriptServer.GetRequest req = new TestWebScriptServer.GetRequest(url);
Response response = sendRequest(req, Status.STATUS_OK, guest);
System.out.println(response.getContentAsString());
JSONObject json = new JSONObject(response.getContentAsString());
Long users = json.isNull(AbstractAdminWebScript.JSON_KEY_USERS) ? null : json.getLong(AbstractAdminWebScript.JSON_KEY_USERS);
assertEquals("Mismatched users", usage.getUsers(), users);
Long documents = json.isNull(AbstractAdminWebScript.JSON_KEY_DOCUMENTS) ? null : json.getLong(AbstractAdminWebScript.JSON_KEY_DOCUMENTS);
assertEquals("Mismatched documents", usage.getDocuments(), documents);
String licenseMode = json.isNull(AbstractAdminWebScript.JSON_KEY_LICENSE_MODE) ? null : json.getString(AbstractAdminWebScript.JSON_KEY_LICENSE_MODE);
assertEquals("Mismatched licenseMode", usage.getLicenseMode().toString(), licenseMode);
boolean readOnly = json.getBoolean(AbstractAdminWebScript.JSON_KEY_READ_ONLY);
assertEquals("Mismatched readOnly", usage.isReadOnly(), readOnly);
boolean updated = json.getBoolean(AbstractAdminWebScript.JSON_KEY_UPDATED);
assertEquals("Mismatched updated", false, updated);
Long licenseValidUntil = json.isNull(AbstractAdminWebScript.JSON_KEY_LICENSE_VALID_UNTIL) ? null : json.getLong(AbstractAdminWebScript.JSON_KEY_LICENSE_VALID_UNTIL);
assertEquals("Mismatched licenseValidUntil", (validUntil == null) ? null : validUntil.getTime(), licenseValidUntil);
Integer level = json.isNull(AbstractAdminWebScript.JSON_KEY_LEVEL) ? null : json.getInt(AbstractAdminWebScript.JSON_KEY_LEVEL);
assertEquals("Mismatched level", checkLevel, level);
json.getJSONArray(AbstractAdminWebScript.JSON_KEY_WARNINGS);
json.getJSONArray(AbstractAdminWebScript.JSON_KEY_ERRORS);
}
Aggregations