coam-client
Version:
A thin client for COAM service
200 lines (174 loc) • 6.95 kB
JavaScript
"use strict";
var CoamClient = require('./CoamClient');
var buildGroupUrlFromId = function buildGroupUrlFromId(groupId) {
var client = new CoamClient();
return client.buildGroupUrlFromId(groupId);
};
var hasPermission = function hasPermission(accessToken, principal, resourceType, resourceIdentifier, permission) {
var client = new CoamClient({
accessToken: accessToken
});
return client.hasPermission(principal, resourceType, resourceIdentifier, permission);
};
var grantRoleToPrincipal = function grantRoleToPrincipal(accessToken, groupUrl, principal, roleName) {
var client = new CoamClient({
accessToken: accessToken
});
return client.grantRoleToPrincipal(groupUrl, principal, roleName);
};
var getGroupInfo = function getGroupInfo(accessToken, groupUrl) {
var client = new CoamClient({
accessToken: accessToken
});
return client.getGroupInfo(groupUrl);
};
var setAdminFlag = function setAdminFlag(accessToken, groupId, principal, isAdmin) {
var client = new CoamClient({
accessToken: accessToken
});
return client.setAdminFlag(groupId, principal, isAdmin);
};
var removeUserRole = function removeUserRole(accessToken, groupId, principal, role) {
var client = new CoamClient({
accessToken: accessToken
});
return client.removeUserRole(groupId, principal, role);
};
var addUserRole = function addUserRole(accessToken, groupId, principal, role) {
var client = new CoamClient({
accessToken: accessToken
});
return client.addUserRole(groupId, principal, role);
};
var group56 = function group56(accessToken, principal) {
var client = new CoamClient({
accessToken: accessToken
});
return client.group56(principal);
};
var modifyUserRoles = function modifyUserRoles(accessToken, groupId, principal, rolesChanges) {
var client = new CoamClient({
accessToken: accessToken
});
return client.modifyUserRoles(groupId, principal, rolesChanges);
};
var addGroupMember = function addGroupMember(accessToken, groupId, principal, isAdmin) {
var client = new CoamClient({
accessToken: accessToken
});
return client.addGroupMember(groupId, principal, isAdmin);
};
var removeGroupMember = function removeGroupMember(accessToken, groupId, principal) {
var client = new CoamClient({
accessToken: accessToken
});
return client.removeGroupMember(groupId, principal);
};
var getRoles = function getRoles(accessToken) {
var client = new CoamClient({
accessToken: accessToken
});
return client.getRoles();
};
var findPrincipals = function findPrincipals(accessToken, query) {
var client = new CoamClient({
accessToken: accessToken
});
return client.findPrincipals(query);
};
var getPrincipal = function getPrincipal(accessToken, principal) {
var client = new CoamClient({
accessToken: accessToken
});
return client.getPrincipal(principal);
};
var createGroup = function createGroup(accessToken, name, description) {
var client = new CoamClient({
accessToken: accessToken
});
return client.createGroup(name, description);
};
var removeGroup = function removeGroup(accessToken, groupId) {
var client = new CoamClient({
accessToken: accessToken
});
return client.removeGroup(groupId);
};
var findGroups = function findGroups(accessToken, resourceType, resourceIdentifier, accountId, forAccountId, relationAccountId, isEssentialGroup, offset, limit, q) {
var client = new CoamClient({
accessToken: accessToken
});
return client.findGroups(resourceType, resourceIdentifier, accountId, forAccountId, relationAccountId, isEssentialGroup, offset, limit, q);
};
var removeResourceFromGroup = function removeResourceFromGroup(accessToken, groupId, resourceType, resourceId) {
var client = new CoamClient({
accessToken: accessToken
});
return client.removeResourceFromGroup(groupId, resourceType, resourceId);
};
var addResourceToGroup = function addResourceToGroup(accessToken, groupId, resourceType, resourceId) {
var client = new CoamClient({
accessToken: accessToken
});
return client.addResourceToGroup(groupId, resourceType, resourceId);
};
var getUserPermissionsForResourceType = function getUserPermissionsForResourceType(accessToken, principal, resourceType) {
var include = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
var permissionFilters = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;
var client = new CoamClient({
accessToken: accessToken
});
return client.getUserPermissionsForResourceType(principal, resourceType, include, permissionFilters);
};
var getUserPermissionsForResourceTypes = function getUserPermissionsForResourceTypes(accessToken, principal, resourceTypes) {
var include = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
var permissionFilters = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;
var client = new CoamClient({
accessToken: accessToken
});
return client.getUserPermissionsForResourceTypes(principal, resourceTypes, include, permissionFilters);
};
var getUsersWithPermission = function getUsersWithPermission(accessToken, resourceType, permissionFilters) {
var client = new CoamClient({
accessToken: accessToken
});
return client.getUsersWithPermission(resourceType, permissionFilters);
};
var getUsersWithResource = function getUsersWithResource(accessToken, resourceType, resourceIdentifier, permission) {
var client = new CoamClient({
accessToken: accessToken
});
return client.getUsersWithResource(resourceType, resourceIdentifier, permission);
};
var createGroupWithUser = function createGroupWithUser(accessToken, principalToCreateGroup, principalToAddToGroup, groupName, groupDescription, rolesToAdd, resourcesToAdd) {
var client = new CoamClient({
accessToken: accessToken
});
return client.createGroupWithUser(principalToCreateGroup, principalToAddToGroup, groupName, groupDescription, rolesToAdd, resourcesToAdd);
};
module.exports = {
getRoles: getRoles,
grantRoleToPrincipal: grantRoleToPrincipal,
addUserRole: addUserRole,
removeUserRole: removeUserRole,
modifyUserRoles: modifyUserRoles,
setAdminFlag: setAdminFlag,
createGroup: createGroup,
removeGroup: removeGroup,
getGroupInfo: getGroupInfo,
addGroupMember: addGroupMember,
removeGroupMember: removeGroupMember,
group56: group56,
buildGroupUrlFromId: buildGroupUrlFromId,
addResourceToGroup: addResourceToGroup,
removeResourceFromGroup: removeResourceFromGroup,
hasPermission: hasPermission,
getUserPermissionsForResourceType: getUserPermissionsForResourceType,
getUserPermissionsForResourceTypes: getUserPermissionsForResourceTypes,
findGroups: findGroups,
findPrincipals: findPrincipals,
getPrincipal: getPrincipal,
getUsersWithPermission: getUsersWithPermission,
getUsersWithResource: getUsersWithResource,
createGroupWithUser: createGroupWithUser
};