Search in sources :

Example 6 with Group

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

the class TaskCreationIT method testMakeGroupTasksWithDutySchedule.

@Test
public void testMakeGroupTasksWithDutySchedule() throws Exception {
    final String groupName = "EscalationGroup";
    // set up a duty schedule for the group
    Group group = m_groupManager.getGroup(groupName);
    group.addDutySchedule("MoTuWeThFr0900-1700");
    m_groupManager.saveGroups();
    long dayTime = getTimeStampFor("21-FEB-2005 11:59:56");
    NotificationTask[] dayTasks = m_eventProcessor.makeGroupTasks(dayTime, m_params, 1, "EscalationGroup", m_commands, new LinkedList<NotificationTask>(), null, INTERVAL);
    assertTasksWithEmail(dayTasks, "brozow@opennms.org", "david@opennms.org");
    assertStartInterval(dayTasks, dayTime, INTERVAL);
    long nightTime = getTimeStampFor("21-FEB-2005 23:00:00");
    NotificationTask[] nightTasks = m_eventProcessor.makeGroupTasks(nightTime, m_params, 1, "EscalationGroup", m_commands, new LinkedList<NotificationTask>(), null, INTERVAL);
    assertTasksWithEmail(nightTasks, "brozow@opennms.org", "david@opennms.org");
    // delayed start due to group duty schedule
    assertStartInterval(nightTasks, nightTime + 36000000, INTERVAL);
}
Also used : Group(org.opennms.netmgt.config.groups.Group) Test(org.junit.Test)

Example 7 with Group

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

the class DefaultGroupService method getUsersOfGroup.

@Override
public OnmsUserList getUsersOfGroup(String groupName) {
    Group group = getGroup(groupName);
    OnmsUserList userCollection = new OnmsUserList();
    if (group != null) {
        for (String eachUser : group.getUsers()) {
            OnmsUser onmsUser;
            try {
                onmsUser = m_userDao.getOnmsUser(eachUser);
                if (onmsUser == null)
                    continue;
                userCollection.add(onmsUser);
            } catch (IOException e) {
                //ignore
                Log.error("could not load user", e);
            }
        }
    }
    return userCollection;
}
Also used : OnmsUserList(org.opennms.netmgt.model.OnmsUserList) Group(org.opennms.netmgt.config.groups.Group) OnmsGroup(org.opennms.netmgt.model.OnmsGroup) OnmsUser(org.opennms.netmgt.model.OnmsUser) IOException(java.io.IOException)

Example 8 with Group

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

the class RolesTest method testRoles.

@Test
public void testRoles() throws Exception {
    assertNotNull(m_roleMgr);
    assertNotNull(m_roleMgr.getRoles());
    String[] roleNames = m_groupManager.getRoleNames();
    assertEquals(roleNames.length, m_roleMgr.getRoles().size());
    for (int i = 0; i < roleNames.length; i++) {
        String roleName = roleNames[i];
        Role role = m_groupManager.getRole(roleName);
        WebRole webRole = m_roleMgr.getRole(roleName);
        assertNotNull(webRole);
        assertRole(role, webRole);
    }
    for (String groupName : m_groupManager.getGroupNames()) {
        Group group = m_groupManager.getGroup(groupName);
        WebGroup webGroup = m_groupMgr.getGroup(groupName);
        assertGroup(group, webGroup);
    }
    for (String userName : m_userManager.getUserNames()) {
        User user = m_userManager.getUser(userName);
        WebUser webUser = m_userMgr.getUser(userName);
        assertUser(user, webUser);
    }
    WebRole oncall = m_roleMgr.getRole("oncall");
    assertEquals("oncall", oncall.getName());
    assertEquals(m_groupMgr.getGroup("InitialGroup"), oncall.getMembershipGroup());
}
Also used : WebRole(org.opennms.netmgt.config.WebRole) Role(org.opennms.netmgt.config.groups.Role) Group(org.opennms.netmgt.config.groups.Group) WebGroup(org.opennms.netmgt.config.WebGroup) WebUser(org.opennms.netmgt.config.WebUser) User(org.opennms.netmgt.config.users.User) WebRole(org.opennms.netmgt.config.WebRole) WebUser(org.opennms.netmgt.config.WebUser) WebGroup(org.opennms.netmgt.config.WebGroup) Test(org.junit.Test)

Example 9 with Group

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

the class UserGroupManagerTest method testSaveGroups.

@Test
public void testSaveGroups() throws Exception {
    final String groupName = "UpGroup";
    Group group = m_groupManager.getGroup(groupName);
    Calendar nightCal = Calendar.getInstance();
    nightCal.setTime(night);
    Calendar dayCal = Calendar.getInstance();
    dayCal.setTime(day);
    // initial has no duty schedule so always on duty
    assertTrue(m_groupManager.isGroupOnDuty(groupName, dayCal));
    assertEquals(0, m_groupManager.groupNextOnDuty(groupName, dayCal));
    assertTrue(m_groupManager.isGroupOnDuty(groupName, nightCal));
    assertEquals(0, m_groupManager.groupNextOnDuty(groupName, nightCal));
    group.addDutySchedule("MoTuWeThFr0900-1700");
    m_groupManager.saveGroups();
    // now user is on duty only from 9-5
    assertTrue(m_groupManager.isGroupOnDuty(groupName, dayCal));
    assertEquals(0, m_groupManager.groupNextOnDuty(groupName, dayCal));
    assertFalse(m_groupManager.isGroupOnDuty(groupName, nightCal));
    assertEquals(36000000, m_groupManager.groupNextOnDuty(groupName, nightCal));
}
Also used : Group(org.opennms.netmgt.config.groups.Group) Calendar(java.util.Calendar) Test(org.junit.Test)

Example 10 with Group

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

the class GroupManager method renameUser.

/**
     * When this method is called group name is changed, so also is the
     * group name belonging to the view. Also overwrites the "groups.xml" file
     *
     * @param oldName a {@link java.lang.String} object.
     * @param newName a {@link java.lang.String} object.
     * @throws java.lang.Exception if any.
     */
public synchronized void renameUser(String oldName, String newName) throws Exception {
    // Get the old data
    if (oldName == null || newName == null || oldName == "" || newName == "") {
        throw new Exception("Group Factory: Rename user.. no value ");
    } else {
        Map<String, Group> map = new LinkedHashMap<String, Group>();
        for (Group group : m_groups.values()) {
            for (ListIterator<String> userList = group.getUsers().listIterator(); userList.hasNext(); ) {
                String name = userList.next();
                if (name.equals(oldName)) {
                    userList.set(newName);
                }
            }
            map.put(group.getName(), group);
        }
        m_groups.clear();
        m_groups.putAll(map);
        for (Role role : m_roles.values()) {
            for (Schedule sched : role.getSchedules()) {
                if (oldName.equals(sched.getName())) {
                    sched.setName(newName);
                }
            }
        }
        saveGroups();
    }
}
Also used : Role(org.opennms.netmgt.config.groups.Role) Group(org.opennms.netmgt.config.groups.Group) OnmsGroup(org.opennms.netmgt.model.OnmsGroup) DutySchedule(org.opennms.netmgt.config.users.DutySchedule) Schedule(org.opennms.netmgt.config.groups.Schedule) IOException(java.io.IOException) LinkedHashMap(java.util.LinkedHashMap)

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