Example usage for org.apache.commons.collections IteratorUtils toList

List of usage examples for org.apache.commons.collections IteratorUtils toList

Introduction

In this page you can find the example usage for org.apache.commons.collections IteratorUtils toList.

Prototype

public static List toList(Iterator iterator) 

Source Link

Document

Gets a list based on an iterator.

Usage

From source file:org.opencastproject.adminui.endpoint.TasksEndpoint.java

@POST
@Path("/new")
@RestQuery(name = "createNewTask", description = "Creates a new task by the given metadata as JSON", returnDescription = "The task identifiers", restParameters = {
        @RestParameter(name = "metadata", isRequired = true, description = "The metadata as JSON", type = RestParameter.Type.TEXT) }, reponses = {
                @RestResponse(responseCode = HttpServletResponse.SC_CREATED, description = "Task sucessfully added"),
                @RestResponse(responseCode = SC_NOT_FOUND, description = "If the workflow definition is not found"),
                @RestResponse(responseCode = SC_BAD_REQUEST, description = "If the metadata is not set or couldn't be parsed") })
public Response createNewTask(@FormParam("metadata") String metadata) throws NotFoundException {
    if (StringUtils.isBlank(metadata)) {
        logger.warn("No metadata set");
        return RestUtil.R.badRequest("No metadata set");
    }//w w w. java2  s  . c  om

    JSONObject metadataJson;
    try {
        metadataJson = (JSONObject) parser.parse(metadata);
    } catch (Exception e) {
        logger.warn("Unable to parse metadata {}", metadata);
        return RestUtil.R.badRequest("Unable to parse metadata");
    }

    String workflowId = (String) metadataJson.get("workflow");
    if (StringUtils.isBlank(workflowId))
        return RestUtil.R.badRequest("No workflow set");

    JSONArray eventIds = (JSONArray) metadataJson.get("eventIds");
    if (eventIds == null)
        return RestUtil.R.badRequest("No eventIds set");

    JSONObject configuration = (JSONObject) metadataJson.get("configuration");
    Stream<Entry<String, String>> options = Stream.empty();
    if (configuration != null) {
        try {
            options = options.append(JSONUtils
                    .toMap(new org.codehaus.jettison.json.JSONObject(configuration.toJSONString())).entrySet());
        } catch (JSONException e) {
            logger.warn("Unable to parse workflow options to map: {}", ExceptionUtils.getStackTrace(e));
            return RestUtil.R.badRequest("Unable to parse workflow options to map");
        }
    }

    Map<String, String> optionsMap = options.filter(new Fn<Map.Entry<String, String>, Boolean>() {
        @Override
        public Boolean ap(Entry<String, String> a) {
            if ("eventIds".equalsIgnoreCase(a.getKey()))
                return false;
            return true;
        }
    }).foldl(new HashMap<String, String>(), TasksEndpoint.<String, String>mapFold());

    WorkflowDefinition wfd;
    try {
        wfd = workflowService.getWorkflowDefinitionById(workflowId);
    } catch (WorkflowDatabaseException e) {
        logger.error("Unable to get workflow definition {}: {}", workflowId, ExceptionUtils.getStackTrace(e));
        return RestUtil.R.serverError();
    }

    List<WorkflowInstance> instances = archive.applyWorkflow(workflow(wfd, optionsMap),
            httpMediaPackageElementProvider.getUriRewriter(), IteratorUtils.toList(eventIds.iterator()));
    return Response.status(Status.CREATED)
            .entity(StringUtils.join(Stream.$(instances).map(getWorkflowIds).toList(), ",")).build();
}

From source file:org.opencastproject.kernel.userdirectory.UserAndRoleDirectoryServiceImpl.java

/**
 * {@inheritDoc}/*from  w  w  w. j  a v  a2  s.  com*/
 *
 * @see org.opencastproject.security.api.UserDirectoryService#getUsers()
 */
@Override
@SuppressWarnings("unchecked")
public Iterator<User> getUsers() {
    Organization org = securityService.getOrganization();
    if (org == null)
        throw new IllegalStateException("No organization is set");

    // Find all users from the user providers
    Stream<User> users = Stream.empty();
    for (final UserProvider userProvider : userProviders) {
        String providerOrgId = userProvider.getOrganization();
        if (!ALL_ORGANIZATIONS.equals(providerOrgId) && !org.getId().equals(providerOrgId))
            continue;
        users = users.append(IteratorUtils.toList(userProvider.getUsers())).sort(userComparator);
    }
    return users.iterator();
}

From source file:org.opencastproject.kernel.userdirectory.UserAndRoleDirectoryServiceImpl.java

/**
 * {@inheritDoc}/*w ww.ja  v a 2s  .c  om*/
 *
 * @see org.opencastproject.security.api.RoleDirectoryService#getRoles()
 */
@Override
@SuppressWarnings("unchecked")
public Iterator<Role> getRoles() {
    Organization org = securityService.getOrganization();
    if (org == null)
        throw new IllegalStateException("No organization is set");

    Stream<Role> roles = Stream.empty();
    for (RoleProvider roleProvider : roleProviders) {
        String providerOrgId = roleProvider.getOrganization();
        if (!ALL_ORGANIZATIONS.equals(providerOrgId) && !org.getId().equals(providerOrgId))
            continue;
        roles = roles.append(IteratorUtils.toList(roleProvider.getRoles())).sort(roleComparator);
    }
    return roles.iterator();
}

From source file:org.opencastproject.kernel.userdirectory.UserAndRoleDirectoryServiceImpl.java

@Override
@SuppressWarnings("unchecked")
public Iterator<User> findUsers(String query, int offset, int limit) {
    if (query == null)
        throw new IllegalArgumentException("Query must be set");
    Organization org = securityService.getOrganization();
    if (org == null)
        throw new IllegalStateException("No organization is set");

    // Find all users from the user providers
    Stream<User> users = Stream.empty();
    for (final UserProvider userProvider : userProviders) {
        String providerOrgId = userProvider.getOrganization();
        if (!ALL_ORGANIZATIONS.equals(providerOrgId) && !org.getId().equals(providerOrgId))
            continue;
        users = users.append(IteratorUtils.toList(userProvider.findUsers(query, 0, 0))).sort(userComparator);
    }/* www.  j  a  v a 2  s  . co  m*/
    return users.drop(offset).apply(limit > 0 ? StreamOp.<User>id().take(limit) : StreamOp.<User>id())
            .iterator();
}

From source file:org.opencastproject.kernel.userdirectory.UserAndRoleDirectoryServiceImpl.java

@Override
@SuppressWarnings("unchecked")
public Iterator<Role> findRoles(String query, int offset, int limit) {
    if (query == null)
        throw new IllegalArgumentException("Query must be set");
    Organization org = securityService.getOrganization();
    if (org == null)
        throw new IllegalStateException("No organization is set");

    // Find all roles from the role providers
    Stream<Role> roles = Stream.empty();
    for (RoleProvider roleProvider : roleProviders) {
        String providerOrgId = roleProvider.getOrganization();
        if (!ALL_ORGANIZATIONS.equals(providerOrgId) && !org.getId().equals(providerOrgId))
            continue;
        roles = roles.append(IteratorUtils.toList(roleProvider.findRoles(query, 0, 0))).sort(roleComparator);
    }// www.j a  v  a 2s . c  om
    return roles.drop(offset).apply(limit > 0 ? StreamOp.<Role>id().take(limit) : StreamOp.<Role>id())
            .iterator();
}

From source file:org.opencastproject.kernel.userdirectory.UserAndRoleDirectoryServiceImplTest.java

@Test
@SuppressWarnings("unchecked")
public void testGetRoles() {
    List<Role> roles = IteratorUtils.toList(directory.getRoles());
    Assert.assertEquals(4, roles.size());
}

From source file:org.opencastproject.kernel.userdirectory.UserAndRoleDirectoryServiceImplTest.java

@Test
@SuppressWarnings("unchecked")
public void testGetUsers() {
    List<User> users = IteratorUtils.toList(directory.getUsers());
    Assert.assertEquals(2, users.size());
}

From source file:org.opencastproject.kernel.userdirectory.UserAndRoleDirectoryServiceImplTest.java

@Test
@SuppressWarnings("unchecked")
public void testFindUsers() {
    List<User> users = IteratorUtils.toList(directory.findUsers("%mple%", 0, 0));
    Assert.assertEquals(2, users.size());
    Assert.assertTrue(//from  ww w .j a  v a  2s.c  om
            userName.equals(users.get(0).getUsername()) || userName.equals(users.get(1).getUsername()));
    Assert.assertTrue(
            "userSample".equals(users.get(0).getUsername()) || "userSample".equals(users.get(1).getUsername()));

    // Test limit and offset
    users = IteratorUtils.toList(directory.findUsers("%mple%", 1, 1));
    Assert.assertEquals(1, users.size());
}

From source file:org.opencastproject.kernel.userdirectory.UserAndRoleDirectoryServiceImplTest.java

@Test
@SuppressWarnings("unchecked")
public void testFindRoles() {
    List<Role> roles = IteratorUtils.toList(directory.findRoles("%2012%", 0, 0));
    Assert.assertEquals(2, roles.size());
    Assert.assertTrue(// w ww.  j av a2 s . co m
            "ROLE_MATH_2012".equals(roles.get(0).getName()) || "ROLE_MATH_2012".equals(roles.get(1).getName()));
    Assert.assertTrue("ROLE_ASTRO_2012".equals(roles.get(0).getName())
            || "ROLE_ASTRO_2012".equals(roles.get(1).getName()));

    // Test limit and offset
    roles = IteratorUtils.toList(directory.findRoles("%2012%", 1, 1));
    Assert.assertEquals(1, roles.size());
    Assert.assertTrue("ROLE_ASTRO_2012".equals(roles.get(0).getName())
            || "ROLE_MATH_2012".equals(roles.get(0).getName()));
}

From source file:org.opencastproject.userdirectory.JpaGroupRoleProviderTest.java

@Test
@SuppressWarnings("unchecked")
public void testRoles() throws Exception {
    Set<JpaRole> authorities = new HashSet<JpaRole>();
    authorities.add(new JpaRole("ROLE_ASTRO_101_SPRING_2011_STUDENT", org1));
    authorities.add(new JpaRole("ROLE_ASTRO_109_SPRING_2012_STUDENT", org1));
    Set<String> members = new HashSet<String>();
    members.add("admin");

    JpaGroup group = new JpaGroup("test", org1, "Test", "Test group", authorities, members);
    provider.addGroup(group);//from  w  w  w.j  ava2 s.  c  o m

    authorities.clear();
    authorities.add(new JpaRole("ROLE_ASTRO_122_SPRING_2011_STUDENT", org1));
    authorities.add(new JpaRole("ROLE_ASTRO_124_SPRING_2012_STUDENT", org1));

    JpaGroup group2 = new JpaGroup("test2", org1, "Test2", "Test 2 group", authorities, members);
    provider.addGroup(group2);

    authorities.clear();
    authorities.add(new JpaRole("ROLE_ASTRO_134_SPRING_2011_STUDENT", org2));
    authorities.add(new JpaRole("ROLE_ASTRO_144_SPRING_2012_STUDENT", org2));

    JpaGroup group3 = new JpaGroup("test2", org2, "Test2", "Test 2 group", authorities, members);
    provider.addGroup(group3);

    List<Role> roles = IteratorUtils.toList(provider.getRoles());
    Assert.assertEquals("There should be four role", 6, roles.size());
    roles.contains(new JpaRole(group.getRole(), org1));
    roles.contains(new JpaRole(group2.getRole(), org1));
}