Search in sources :

Example 1 with Group

use of org.opennms.netmgt.config.groups.Group in project opennms by OpenNMS.

the class SetUserGroupController method handleRequestInternal.

@Override
protected ModelAndView handleRequestInternal(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception {
    boolean shouldFilter = AclUtils.shouldFilter(SecurityContextHolder.getContext().getAuthentication().getAuthorities());
    if (httpServletRequest.getMethod().equals(METHOD_POST) && shouldFilter) {
        String userGroups = httpServletRequest.getParameter("j_usergroups");
        String[] userGroupList;
        if (userGroups != null) {
            String[] split = userGroups.split(",");
            userGroupList = split[0].equals("") ? null : split;
        } else {
            userGroupList = null;
        }
        OnmsAuthenticationDetails details = (OnmsAuthenticationDetails) SecurityContextHolder.getContext().getAuthentication().getDetails();
        details.setUserGroups(userGroupList);
        String[] groupNames;
        String user = SecurityContextHolder.getContext().getAuthentication().getName();
        List<Group> groups = m_groupDao.findGroupsForUser(user);
        groupNames = new String[groups.size()];
        for (int i = 0; i < groups.size(); i++) {
            groupNames[i] = groups.get(i).getName();
        }
        if (details.getUserGroups() != null && details.getUserGroups().length > 0) {
            Set<String> detailsSet = new HashSet<String>(Arrays.asList(details.getUserGroups()));
            Set<String> groupSet = new HashSet<String>(Arrays.asList(groupNames));
            if (groupSet.containsAll(detailsSet)) {
                groupNames = details.getUserGroups();
            }
        }
        m_filterManager.enableAuthorizationFilter(groupNames);
    }
    return null;
}
Also used : Group(org.opennms.netmgt.config.groups.Group) OnmsAuthenticationDetails(org.opennms.web.springframework.security.OnmsAuthenticationDetails) HashSet(java.util.HashSet)

Example 2 with Group

use of org.opennms.netmgt.config.groups.Group in project opennms by OpenNMS.

the class AddGroupDutySchedulesServlet method doPost.

/** {@inheritDoc} */
@Override
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    HttpSession userSession = request.getSession(true);
    Group group = (Group) userSession.getAttribute("group.modifyGroup.jsp");
    Vector<Object> newSchedule = new Vector<Object>();
    int dutyAddCount = WebSecurityUtils.safeParseInt(request.getParameter("numSchedules"));
    for (int j = 0; j < dutyAddCount; j++) {
        // add 7 false boolean values for each day of the week
        for (int i = 0; i < 7; i++) {
            newSchedule.addElement(Boolean.FALSE);
        }
        // add two strings for the begin and end time
        newSchedule.addElement("0");
        newSchedule.addElement("0");
        group.addDutySchedule((new DutySchedule(newSchedule)).toString());
    }
    // forward the request for proper display
    RequestDispatcher dispatcher = this.getServletContext().getRequestDispatcher("/admin/userGroupView/groups/modifyGroup.jsp");
    dispatcher.forward(request, response);
}
Also used : Group(org.opennms.netmgt.config.groups.Group) HttpSession(javax.servlet.http.HttpSession) DutySchedule(org.opennms.netmgt.config.users.DutySchedule) Vector(java.util.Vector) RequestDispatcher(javax.servlet.RequestDispatcher)

Example 3 with Group

use of org.opennms.netmgt.config.groups.Group in project opennms by OpenNMS.

the class DefaultWebGroupRepository method saveGroup.

/** {@inheritDoc} */
@Transactional
@Override
public void saveGroup(WebGroup webGroup) {
    Group group = groupService.getGroup(webGroup.getName());
    if (group == null) {
        group = new Group();
        group.setName(webGroup.getName());
    }
    group.setComments(webGroup.getComments());
    group.setDutySchedules(webGroup.getDutySchedules());
    group.setUsers(webGroup.getUsers());
    groupService.saveGroup(group, webGroup.getAuthorizedCategories());
}
Also used : Group(org.opennms.netmgt.config.groups.Group) Transactional(org.springframework.transaction.annotation.Transactional)

Example 4 with Group

use of org.opennms.netmgt.config.groups.Group in project opennms by OpenNMS.

the class GroupManager method initializeGroupsAndRoles.

private void initializeGroupsAndRoles(Groupinfo groupinfo) {
    List<Group> groups = groupinfo.getGroups();
    m_groups = new LinkedHashMap<String, Group>();
    m_oldHeader = groupinfo.getHeader();
    for (Group curGroup : groups) {
        m_groups.put(curGroup.getName(), curGroup);
    }
    buildDutySchedules(m_groups);
    if (groupinfo.getRoles().size() > 0) {
        m_roles = new LinkedHashMap<String, Role>();
        for (final Role role : groupinfo.getRoles()) {
            m_roles.put(role.getName(), role);
        }
    }
}
Also used : Role(org.opennms.netmgt.config.groups.Role) Group(org.opennms.netmgt.config.groups.Group) OnmsGroup(org.opennms.netmgt.model.OnmsGroup)

Example 5 with Group

use of org.opennms.netmgt.config.groups.Group in project opennms by OpenNMS.

the class NotificationsITCase method getUsersInGroup.

protected Collection<String> getUsersInGroup(String groupName) throws Exception {
    Group group = m_groupManager.getGroup(groupName);
    String[] users = group.getUsers().toArray(new String[0]);
    return Arrays.asList(users);
}
Also used : Group(org.opennms.netmgt.config.groups.Group)

Aggregations

Group (org.opennms.netmgt.config.groups.Group)22 OnmsGroup (org.opennms.netmgt.model.OnmsGroup)8 RequestDispatcher (javax.servlet.RequestDispatcher)5 HttpSession (javax.servlet.http.HttpSession)5 Role (org.opennms.netmgt.config.groups.Role)4 DutySchedule (org.opennms.netmgt.config.users.DutySchedule)4 IOException (java.io.IOException)3 ServletException (javax.servlet.ServletException)3 Test (org.junit.Test)3 GroupManager (org.opennms.netmgt.config.GroupManager)3 ArrayList (java.util.ArrayList)2 Calendar (java.util.Calendar)2 Vector (java.util.Vector)2 StringWriter (java.io.StringWriter)1 ChoiceFormat (java.text.ChoiceFormat)1 Date (java.util.Date)1 HashSet (java.util.HashSet)1 LinkedHashMap (java.util.LinkedHashMap)1 List (java.util.List)1 View (org.opennms.features.vaadin.surveillanceviews.model.View)1