Search in sources :

Example 21 with Role

use of org.osgi.service.useradmin.Role in project felix by apache.

the class RoleRepositoryTest method testRemoveBasicRoleYieldsEventOk.

/**
 * Tests whether removing a role from a group causes an event to be emitted to the {@link RoleRepository}.
 */
public void testRemoveBasicRoleYieldsEventOk() throws Exception {
    final Role anyone = m_roleRepository.getRoleByName(Role.USER_ANYONE);
    final Group role = (Group) m_roleRepository.addRole("bar", Role.GROUP);
    role.addMember(anyone);
    m_latch = new CountDownLatch(1);
    new Thread(new Runnable() {

        public void run() {
            role.removeMember(anyone);
        }
    }).start();
    assertTrue(m_latch.await(1, TimeUnit.SECONDS));
}
Also used : Role(org.osgi.service.useradmin.Role) Group(org.osgi.service.useradmin.Group) CountDownLatch(java.util.concurrent.CountDownLatch)

Example 22 with Role

use of org.osgi.service.useradmin.Role in project felix by apache.

the class RoleRepositoryTest method testGetRolesWithFilterOk.

/**
 * Test method for {@link org.apache.felix.useradmin.impl.RoleRepository#getRoles(org.osgi.framework.Filter)}.
 */
public void testGetRolesWithFilterOk() throws Exception {
    Role role1 = m_roleRepository.addRole("foo", Role.USER);
    role1.getProperties().put("key", "value1");
    role1.getProperties().put("keyA", "valueA");
    Role role2 = m_roleRepository.addRole("bar", Role.GROUP);
    role2.getProperties().put("key", "value2");
    role2.getProperties().put("keyB", "value1");
    String filter;
    filter = "(key=value1)";
    assertSameRoles(new Role[] { role1 }, m_roleRepository.getRoles(filter));
    filter = "(key=value2)";
    assertSameRoles(new Role[] { role2 }, m_roleRepository.getRoles(filter));
    filter = "(key=value*)";
    assertSameRoles(new Role[] { role1, role2 }, m_roleRepository.getRoles(filter));
    filter = "(|(key=value1)(keyB=value1))";
    assertSameRoles(new Role[] { role1, role2 }, m_roleRepository.getRoles(filter));
}
Also used : Role(org.osgi.service.useradmin.Role)

Example 23 with Role

use of org.osgi.service.useradmin.Role in project felix by apache.

the class RoleRepositoryTest method testRemoveRequiredRoleYieldsEventOk.

/**
 * Tests whether removing a role from a group causes an event to be emitted to the {@link RoleRepository}.
 */
public void testRemoveRequiredRoleYieldsEventOk() throws Exception {
    final Role anyone = m_roleRepository.getRoleByName(Role.USER_ANYONE);
    final Group role = (Group) m_roleRepository.addRole("bar", Role.GROUP);
    role.addRequiredMember(anyone);
    m_latch = new CountDownLatch(1);
    new Thread(new Runnable() {

        public void run() {
            role.removeMember(anyone);
        }
    }).start();
    assertTrue(m_latch.await(1, TimeUnit.SECONDS));
}
Also used : Role(org.osgi.service.useradmin.Role) Group(org.osgi.service.useradmin.Group) CountDownLatch(java.util.concurrent.CountDownLatch)

Example 24 with Role

use of org.osgi.service.useradmin.Role in project felix by apache.

the class RoleRepositoryTest method testAddBasicRoleYieldsEventOk.

/**
 * Tests whether adding a new role to a group causes an event to be emitted to the {@link RoleRepository}.
 */
public void testAddBasicRoleYieldsEventOk() throws Exception {
    final Group role = (Group) m_roleRepository.addRole("foo", Role.GROUP);
    m_latch = new CountDownLatch(1);
    new Thread(new Runnable() {

        public void run() {
            Role anyone = m_roleRepository.getRoleByName(Role.USER_ANYONE);
            role.addMember(anyone);
        }
    }).start();
    assertTrue(m_latch.await(1, TimeUnit.SECONDS));
}
Also used : Role(org.osgi.service.useradmin.Role) Group(org.osgi.service.useradmin.Group) CountDownLatch(java.util.concurrent.CountDownLatch)

Example 25 with Role

use of org.osgi.service.useradmin.Role in project felix by apache.

the class UserAdminImplTest method testGetNonExistingUserFail.

/**
 * Tests that getting a non-existing user does not work and yields null.
 */
public void testGetNonExistingUserFail() {
    Role user1 = m_userAdmin.createRole("user1", Role.USER);
    user1.getProperties().put("key1", "value1");
    user1.getProperties().put("key2", "constant");
    Role user2 = m_userAdmin.createRole("user2", Role.USER);
    user2.getProperties().put("key1", "value2");
    user1.getProperties().put("key2", "constant");
    Role group1 = m_userAdmin.createRole("group1", Role.GROUP);
    group1.getProperties().put("key1", "value3");
    assertNull(m_userAdmin.getUser("key1", "value4"));
}
Also used : Role(org.osgi.service.useradmin.Role)

Aggregations

Role (org.osgi.service.useradmin.Role)98 Group (org.osgi.service.useradmin.Group)29 IOException (java.io.IOException)17 CountDownLatch (java.util.concurrent.CountDownLatch)13 List (java.util.List)9 User (org.osgi.service.useradmin.User)9 ArrayList (java.util.ArrayList)7 Test (org.junit.Test)6 Collection (java.util.Collection)5 UserAdmin (org.osgi.service.useradmin.UserAdmin)5 DBCollection (com.mongodb.DBCollection)4 Iterator (java.util.Iterator)4 BackendException (org.apache.felix.useradmin.BackendException)4 ObservableRole (org.apache.felix.useradmin.impl.role.ObservableRole)4 Authorization (org.osgi.service.useradmin.Authorization)4 WriteResult (com.mongodb.WriteResult)3 Filter (org.osgi.framework.Filter)3 BasicDBObject (com.mongodb.BasicDBObject)2 DBObject (com.mongodb.DBObject)2 Dictionary (java.util.Dictionary)2