Search in sources :

Example 16 with Group

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

the class ModifyGroupServlet method doPost.

/** {@inheritDoc} */
@Override
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    HttpSession userSession = request.getSession(true);
    try {
        GroupFactory.init();
        GroupManager groupFactory = GroupFactory.getInstance();
        Group group = groupFactory.getGroup(request.getParameter("groupName"));
        userSession.setAttribute("group.modifyGroup.jsp", group);
    } catch (Throwable e) {
        throw new ServletException("Couldn't initialize GroupFactory", e);
    }
    // forward the request for proper display
    RequestDispatcher dispatcher = this.getServletContext().getRequestDispatcher("/admin/userGroupView/groups/modifyGroup.jsp");
    dispatcher.forward(request, response);
}
Also used : ServletException(javax.servlet.ServletException) Group(org.opennms.netmgt.config.groups.Group) HttpSession(javax.servlet.http.HttpSession) GroupManager(org.opennms.netmgt.config.GroupManager) RequestDispatcher(javax.servlet.RequestDispatcher)

Example 17 with Group

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

the class SaveGroupServlet method doPost.

/** {@inheritDoc} */
@Override
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    HttpSession user = request.getSession(false);
    if (user != null) {
        Group newGroup = (Group) user.getAttribute("group.modifyGroup.jsp");
        if (newGroup != null) {
            // now save to the xml file
            try {
                GroupManager groupFactory = GroupFactory.getInstance();
                groupFactory.saveGroup(newGroup.getName(), newGroup);
            } catch (Throwable e) {
                throw new ServletException("Error saving group " + newGroup.getName(), e);
            }
        }
    }
    // forward the request for proper display
    RequestDispatcher dispatcher = this.getServletContext().getRequestDispatcher("/admin/userGroupView/groups/list.jsp");
    dispatcher.forward(request, response);
}
Also used : ServletException(javax.servlet.ServletException) Group(org.opennms.netmgt.config.groups.Group) HttpSession(javax.servlet.http.HttpSession) GroupManager(org.opennms.netmgt.config.GroupManager) RequestDispatcher(javax.servlet.RequestDispatcher)

Example 18 with Group

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

the class AddNewGroupServlet method doPost.

/** {@inheritDoc} */
@Override
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    try {
        GroupFactory.init();
    } catch (Throwable e) {
        throw new ServletException("AddNewGroupServlet: Error initialising group factory." + e);
    }
    GroupManager groupFactory = GroupFactory.getInstance();
    String groupName = request.getParameter("groupName");
    String groupComment = request.getParameter("groupComment");
    if (groupComment == null) {
        groupComment = "";
    }
    boolean hasGroup = false;
    try {
        hasGroup = groupFactory.hasGroup(groupName);
    } catch (Throwable e) {
        throw new ServletException("Can't determine if group " + groupName + " already exists in groups.xml.", e);
    }
    if (hasGroup) {
        RequestDispatcher dispatcher = this.getServletContext().getRequestDispatcher("/admin/userGroupView/groups/newGroup.jsp?action=redo");
        dispatcher.forward(request, response);
    } else {
        Group newGroup = new Group();
        newGroup.setName(groupName);
        newGroup.setComments(groupComment);
        HttpSession groupSession = request.getSession(false);
        groupSession.setAttribute("group.modifyGroup.jsp", newGroup);
        // forward the request for proper display
        RequestDispatcher dispatcher = this.getServletContext().getRequestDispatcher("/admin/userGroupView/groups/modifyGroup.jsp");
        dispatcher.forward(request, response);
    }
}
Also used : ServletException(javax.servlet.ServletException) Group(org.opennms.netmgt.config.groups.Group) HttpSession(javax.servlet.http.HttpSession) GroupManager(org.opennms.netmgt.config.GroupManager) RequestDispatcher(javax.servlet.RequestDispatcher)

Example 19 with Group

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

the class BroadcastEventProcessor method makeGroupTasks.

NotificationTask[] makeGroupTasks(long startTime, Map<String, String> params, int noticeId, String targetName, String[] command, List<NotificationTask> targetSiblings, String autoNotify, long interval) throws IOException {
    Group group = getGroupManager().getGroup(targetName);
    Calendar startCal = Calendar.getInstance();
    startCal.setTimeInMillis(startTime);
    long next = getGroupManager().groupNextOnDuty(group.getName(), startCal);
    // it the group is not on duty
    if (next < 0) {
        LOG.debug("The group {} is not scheduled to come back on duty. No notification will be sent to this group.", group.getName());
        return null;
    }
    LOG.debug("The group {} is on duty in {} millisec.", group.getName(), next);
    String[] users = group.getUsers().toArray(new String[0]);
    // There are no users in the group
    if (users == null || users.length == 0) {
        LOG.debug("Not sending notice, no users specified for group {}", group.getName());
        return null;
    }
    return constructTasksFromUserList(users, startTime, next, params, noticeId, command, targetSiblings, autoNotify, interval);
}
Also used : Group(org.opennms.netmgt.config.groups.Group) Calendar(java.util.Calendar)

Example 20 with Group

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

the class NotificationsITCase method anticipateNotificationsForGroup.

protected long anticipateNotificationsForGroup(String subject, String textMsg, String groupName, long startTime, long interval) throws Exception {
    Group group = m_groupManager.getGroup(groupName);
    String[] users = group.getUsers().toArray(new String[0]);
    return anticipateNotificationsForUsers(users, subject, textMsg, startTime, interval);
}
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