Search in sources :

Example 66 with Role

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

the class MemoryRoleRepositoryStore method getRoles.

public Role[] getRoles(String filterValue) throws Exception {
    Collection roles = m_entries.values();
    Filter filter = null;
    if (filterValue != null) {
        filter = FrameworkUtil.createFilter(filterValue);
    }
    List matchingRoles = new ArrayList();
    Iterator rolesIter = roles.iterator();
    while (rolesIter.hasNext()) {
        Role role = (Role) rolesIter.next();
        if ((filter == null) || filter.match(role.getProperties())) {
            matchingRoles.add(role);
        }
    }
    Role[] result = new Role[matchingRoles.size()];
    return (Role[]) matchingRoles.toArray(result);
}
Also used : Role(org.osgi.service.useradmin.Role) Filter(org.osgi.framework.Filter) ArrayList(java.util.ArrayList) Iterator(java.util.Iterator) Collection(java.util.Collection) List(java.util.List) ArrayList(java.util.ArrayList)

Example 67 with Role

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

the class RoleRepositoryTest method testRemoveRolePropertyYieldsEventOk.

/**
 * Tests whether removing a property from a role causes an event to be emitted to the {@link RoleRepository}.
 */
public void testRemoveRolePropertyYieldsEventOk() throws Exception {
    final Role role = m_roleRepository.addRole("john.doe", Role.USER);
    role.getProperties().put("key", "value");
    m_latch = new CountDownLatch(1);
    new Thread(new Runnable() {

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

Example 68 with Role

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

the class RoleRepositoryTest method testGetRoleByName.

/**
 * Test method for {@link org.apache.felix.useradmin.impl.RoleRepository#getRoleByName(java.lang.String)}.
 */
public void testGetRoleByName() {
    Role role1 = m_roleRepository.addRole("foo", Role.USER);
    Role role2 = m_roleRepository.addRole("bar", Role.GROUP);
    assertEquals(role1, m_roleRepository.getRoleByName("foo"));
    assertEquals(role2, m_roleRepository.getRoleByName("bar"));
    assertNull(m_roleRepository.getRoleByName("qux"));
}
Also used : Role(org.osgi.service.useradmin.Role)

Example 69 with Role

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

the class RoleRepositoryTest method testGetRolesWithKeyValuePairOk.

/**
 * Test method for {@link org.apache.felix.useradmin.impl.RoleRepository#getRoles(String, String)}.
 */
public void testGetRolesWithKeyValuePairOk() 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");
    assertSameRoles(new Role[] { role1 }, m_roleRepository.getRoles("key", "value1"));
    assertSameRoles(new Role[] { role2 }, m_roleRepository.getRoles("key", "value2"));
    assertSameRoles(new Role[0], m_roleRepository.getRoles("key", "value"));
}
Also used : Role(org.osgi.service.useradmin.Role)

Example 70 with Role

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

the class RoleRepositoryTest method testGetRolesWithoutFilterOk.

/**
 * Test method for {@link org.apache.felix.useradmin.impl.RoleRepository#getRoles(org.osgi.framework.Filter)}.
 */
public void testGetRolesWithoutFilterOk() {
    Role role1 = m_roleRepository.addRole("foo", Role.USER);
    Role role2 = m_roleRepository.addRole("bar", Role.GROUP);
    assertSameRoles(new Role[] { role2, role1 }, m_roleRepository.getRoles(null));
}
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