+++ /dev/null
-qx.Class.define("org.argeo.security.ria.SecurityAPI", {\r
- extend : qx.core.Object,\r
- statics : {\r
- \r
- DEFAULT_CONTEXT : "/org.argeo.security.webapp",\r
- \r
- CREDENTIALS_SERVICE : "getCredentials.security",\r
- \r
- USERS_LIST_SERVICE : "getUsersList.security",\r
- USER_EXISTS_SERVICE : "userExists.security", \r
- DELETE_USER_SERVICE : "deleteUser.security",\r
- UPDATE_USER_SERVICE : "updateUser.security",\r
- UPDATE_USER_SELF_SERVICE : "updateUserSelf.security",\r
- GET_USER_DETAILS_SERVICE : "getUserDetails.security",\r
- CREATE_USER_SERVICE : "createUser.security",\r
- UPDATE_USER_PASS_SERVICE : "updateUserPassword.security",\r
- UPDATE_PASS_SERVICE : "updatePassword.security",\r
-\r
- ROLES_LIST_SERVICE : "getRolesList.security",\r
- CREATE_ROLE_SERVICE : "createRole.security",\r
- DELETE_ROLE_SERVICE : "deleteRole.security", \r
-\r
- /**\r
- * Standard Request getter\r
- * @param serviceName {String} The name of the service to call (without base context)\r
- * @param fireReloadEventType {String} Whether query should trigger a ReloadEvent\r
- * @param iLoadStatusables {org.argeo.ria.components.ILoadStatusables[]} Gui parts to update\r
- * @return {qx.io.remote.Request}\r
- */\r
- getServiceRequest : function(serviceName) {\r
- var serviceManager = org.argeo.ria.remote.RequestManager.getInstance();\r
- return serviceManager.getRequest(\r
- org.argeo.security.ria.SecurityAPI.DEFAULT_CONTEXT + "/" + serviceName, \r
- "GET",\r
- "application/json");\r
- },\r
- \r
- /**\r
- * \r
- * @param {qx.io.remote.Request} request\r
- * @param {Array} argumentsArray\r
- * @param {Integer} startIndex\r
- */\r
- parseOptionalArguments : function(request, argumentsArray, startIndex){\r
- // Attach Error listener\r
- request.addListener("completed", function(response){\r
- var jSonContent = response.getContent(); \r
- if(typeof jSonContent == "object" && jSonContent.status && jSonContent.status == "ERROR"){\r
- org.argeo.ria.components.Logger.getInstance().error(jSonContent.message);\r
- response.getTarget().abort();\r
- } \r
- });\r
-\r
- // Attach ILoadStatusables & reloadEvents\r
- if(argumentsArray.length <= startIndex) return;\r
- var serviceManager = org.argeo.ria.remote.RequestManager.getInstance();\r
- for(var i=startIndex;i<argumentsArray.length;i++){\r
- var argument = argumentsArray[i];\r
- if(qx.lang.Type.isArray(argument)){\r
- serviceManager.attachILoadStatusables(request, argument);\r
- }else if(typeof argument == "string"){\r
- serviceManager.attachReloadEventType(request, argument);\r
- }\r
- }\r
- },\r
- \r
- getCredentialsService : function(){\r
- var req = org.argeo.security.ria.SecurityAPI.getServiceRequest(org.argeo.security.ria.SecurityAPI.CREDENTIALS_SERVICE);\r
- org.argeo.security.ria.SecurityAPI.parseOptionalArguments(req, arguments, 0);\r
- return req; \r
- },\r
- \r
- /**\r
- * @return {qx.io.remote.Request}\r
- */\r
- getListUsersService : function(getNatures){\r
- var req = org.argeo.security.ria.SecurityAPI.getServiceRequest(org.argeo.security.ria.SecurityAPI.USERS_LIST_SERVICE);\r
- org.argeo.security.ria.SecurityAPI.parseOptionalArguments(req, arguments, 1);\r
- req.setParameter("getNatures", (getNatures || false));\r
- return req;\r
- },\r
- \r
- /**\r
- * @return {qx.io.remote.Request}\r
- */\r
- getUserExistsService : function(userName){\r
- var req = org.argeo.security.ria.SecurityAPI.getServiceRequest(org.argeo.security.ria.SecurityAPI.USER_EXISTS_SERVICE);\r
- org.argeo.security.ria.SecurityAPI.parseOptionalArguments(req, arguments, 1);\r
- req.setParameter("username", userName);\r
- return req;\r
- },\r
- \r
- /**\r
- * @return {qx.io.remote.Request}\r
- */\r
- getDeleteUserService : function(userName){\r
- var req = org.argeo.security.ria.SecurityAPI.getServiceRequest(org.argeo.security.ria.SecurityAPI.DELETE_USER_SERVICE);\r
- org.argeo.security.ria.SecurityAPI.parseOptionalArguments(req, arguments, 1);\r
- req.setParameter("username", userName);\r
- return req;\r
- },\r
- \r
- /**\r
- * @return {qx.io.remote.Request}\r
- */\r
- getUpdateUserService : function(userObject, self){\r
- var service = (self?org.argeo.security.ria.SecurityAPI.UPDATE_USER_SELF_SERVICE:org.argeo.security.ria.SecurityAPI.UPDATE_USER_SERVICE);\r
- var req = org.argeo.security.ria.SecurityAPI.getServiceRequest(service);\r
- req.setMethod("POST");\r
- org.argeo.security.ria.SecurityAPI.parseOptionalArguments(req, arguments, 1);\r
- var jsonString = qx.util.Json.stringify(userObject);\r
- req.setData(jsonString);\r
- return req;\r
- },\r
- \r
- /**\r
- * @return {qx.io.remote.Request}\r
- */\r
- getUserDetailsService : function(userName){\r
- var req = org.argeo.security.ria.SecurityAPI.getServiceRequest(org.argeo.security.ria.SecurityAPI.GET_USER_DETAILS_SERVICE);\r
- org.argeo.security.ria.SecurityAPI.parseOptionalArguments(req, arguments, 1);\r
- req.setParameter("username", userName);\r
- return req;\r
- },\r
- \r
- /**\r
- * @return {qx.io.remote.Request}\r
- */\r
- getCreateUserService : function(userObject){\r
- var req = org.argeo.security.ria.SecurityAPI.getServiceRequest(org.argeo.security.ria.SecurityAPI.CREATE_USER_SERVICE);\r
- req.setMethod("POST");\r
- org.argeo.security.ria.SecurityAPI.parseOptionalArguments(req, arguments, 1);\r
- var jsonString = qx.util.Json.stringify(userObject);\r
- req.setData(jsonString);\r
- return req;\r
- },\r
- \r
- /**\r
- * @return {qx.io.remote.Request}\r
- */\r
- getUpdatePassService : function(oldPassword, newPassword){\r
- var req = org.argeo.security.ria.SecurityAPI.getServiceRequest(org.argeo.security.ria.SecurityAPI.UPDATE_PASS_SERVICE);\r
- org.argeo.security.ria.SecurityAPI.parseOptionalArguments(req, arguments, 2);\r
- req.setParameter("password", newPassword);\r
- req.setParameter("oldPassword", oldPassword);\r
- return req;\r
- },\r
- \r
- /**\r
- * @return {qx.io.remote.Request}\r
- */\r
- getUpdateUserPassService : function(userName, userPassword){\r
- var req = org.argeo.security.ria.SecurityAPI.getServiceRequest(org.argeo.security.ria.SecurityAPI.UPDATE_USER_PASS_SERVICE);\r
- org.argeo.security.ria.SecurityAPI.parseOptionalArguments(req, arguments, 2);\r
- req.setParameter("username", userName);\r
- req.setParameter("password", userPassword);\r
- return req;\r
- },\r
- \r
- /**\r
- * @return {qx.io.remote.Request}\r
- */\r
- getListRolesService : function(){\r
- var req = org.argeo.security.ria.SecurityAPI.getServiceRequest(org.argeo.security.ria.SecurityAPI.ROLES_LIST_SERVICE);\r
- org.argeo.security.ria.SecurityAPI.parseOptionalArguments(req, arguments, 0);\r
- return req;\r
- },\r
- \r
- /**\r
- * @return {qx.io.remote.Request}\r
- */\r
- getCreateRoleService : function(roleName){\r
- var req = org.argeo.security.ria.SecurityAPI.getServiceRequest(org.argeo.security.ria.SecurityAPI.CREATE_ROLE_SERVICE);\r
- org.argeo.security.ria.SecurityAPI.parseOptionalArguments(req, arguments, 1);\r
- req.setParameter("role", roleName);\r
- return req;\r
- },\r
- \r
- /**\r
- * @return {qx.io.remote.Request}\r
- */\r
- getDeleteRoleService : function(roleName){\r
- var req = org.argeo.security.ria.SecurityAPI.getServiceRequest(org.argeo.security.ria.SecurityAPI.DELETE_ROLE_SERVICE);\r
- org.argeo.security.ria.SecurityAPI.parseOptionalArguments(req, arguments, 1);\r
- req.setParameter("role", roleName);\r
- return req;\r
- } \r
- }\r
-});
\ No newline at end of file