Interface GroupDAO


public interface GroupDAO
  • Method Details

    • getAllGroupsForOrganization

      List<Group> getAllGroupsForOrganization(@Param("orgId") long orgId, @Param("keyword") String keyword, @Param("offset") int offset, @Param("limit") int limit, @Param("sort") String sort)
      Get all groups for given organization
      Parameters:
      orgId - organization identifier
      keyword - keyword to filter groups
      offset - offset fpr pagination
      limit - limit number of groups per page
      sort - sort order
      Returns:
      List of groups
    • getAllGroupsForOrganizationTotal

      int getAllGroupsForOrganizationTotal(@Param("orgId") long orgId, @Param("keyword") String keyword)
      Get all groups for given organization
      Parameters:
      orgId - organization identifier
      keyword - keyword to filter groups
      Returns:
      List of groups
    • createGroup

      Integer createGroup(@Param("orgId") long orgId, @Param("groupName") String groupName, @Param("groupDescription") String groupDescription, @Param("externallyManaged") int externallyManaged)
      Create group
      Parameters:
      orgId - organization id
      groupName - group name
      groupDescription - group description
      externallyManaged - 1 if group is externally managed, 0 otherwise
      Returns:
      Number of affected rows in DB
    • updateGroup

      Integer updateGroup(Group group)
      Update group
      Parameters:
      group - group to update
      Returns:
      Number of affected rows in DB
    • deleteGroup

      Integer deleteGroup(@Param("groupId") long groupId)
      Delete group
      Parameters:
      groupId - group identifier
      Returns:
      Number of affected rows in DB
    • deleteGroups

      Integer deleteGroups(@Param("groupIds") List<Long> groupIds)
      Delete groups
      Parameters:
      groupIds - ids of the groups to be deleted
      Returns:
      Number of affected rows in DB
    • getGroup

      Group getGroup(@Param("groupId") long groupId)
      Get group by group id
      Parameters:
      groupId - group identifier
      Returns:
      Group or null if not found
    • getGroups

      List<Group> getGroups(@Param("groupIds") List<Long> groupIds)
      Get groups by group ids
      Parameters:
      groupIds - list of group identifiers
      Returns:
      List of groups or null if not found
    • getGroupByName

      Group getGroupByName(@Param("groupName") String groupName)
      Get group by group name
      Parameters:
      groupName - group name
      Returns:
      Group or null if not found
    • getGroupMembers

      List<User> getGroupMembers(@Param("groupId") long groupId, @Param("offset") int offset, @Param("limit") int limit, @Param("sort") String sort)
      Get group members
      Parameters:
      groupId - group identifier
      offset - offset for pagination
      limit - limit number of members per page
      sort - sort order
      Returns:
      List of users, group members
    • getGroupMembersTotal

      Integer getGroupMembersTotal(@Param("groupId") long groupId)
      Get total number of group members.
      Parameters:
      groupId - group identifier
      Returns:
      Number of members
    • addGroupMembers

      Integer addGroupMembers(@Param("groupId") long groupId, @Param("userIds") List<Long> userIds)
      Add users to the group
      Parameters:
      groupId - group identifier
      userIds - list of user identifiers
      Returns:
      Number of rows affected in DB
    • removeGroupMembers

      Integer removeGroupMembers(@Param("groupId") long groupId, @Param("userIds") List<Long> userIds)
      Remove users from the group
      Parameters:
      groupId - group identifier
      userIds - list of user identifiers
      Returns:
      Number of rows affected in DB
    • groupExists

      Integer groupExists(@Param("groupId") long groupId, @Param("groupName") String groupName)
      Check if group exists
      Parameters:
      groupId - group identifier
      groupName - group name
      Returns:
      Number of groups