Example usage for org.springframework.data.domain Page getContent

List of usage examples for org.springframework.data.domain Page getContent

Introduction

In this page you can find the example usage for org.springframework.data.domain Page getContent.

Prototype

List<T> getContent();

Source Link

Document

Returns the page content as List .

Usage

From source file:com.alliander.osgp.adapter.ws.core.application.services.DeviceManagementService.java

/**
 * Find all devices/*from w ww  . j av a 2  s  .co  m*/
 *
 * @param organisationIdentification
 *            The organisation who performed the action
 * @param pageSize
 *            The page size
 * @param pageNumber
 *            the page to be returned.
 * @param deviceFilter
 *            the filter object
 *
 * @return A page with devices
 *
 * @throws FunctionalException
 * @throws ArgumentNullOrEmptyException
 */
@Transactional(value = "transactionManager")
public Page<Device> findDevices(@Identification final String organisationIdentification, final Integer pageSize,
        final Integer pageNumber, final DeviceFilter deviceFilter)
        throws FunctionalException, ArgumentNullOrEmptyException {
    final Organisation organisation = this.domainHelperService.findOrganisation(organisationIdentification);
    this.domainHelperService.isAllowed(organisation, PlatformFunction.FIND_DEVICES);
    this.pagingSettings.updatePagingSettings(pageSize, pageNumber);
    Sort.Direction sortDir = Sort.Direction.DESC;
    String sortedBy = "creationTime";
    if (deviceFilter != null) {
        if (!StringUtils.isEmpty(deviceFilter.getSortDir()) && deviceFilter.getSortDir().contains("asc")) {
            sortDir = Sort.Direction.ASC;
        }
        if (!StringUtils.isEmpty(deviceFilter.getSortedBy())) {
            sortedBy = deviceFilter.getSortedBy();
        }
    }

    final PageRequest request = new PageRequest(this.pagingSettings.getPageNumber(),
            this.pagingSettings.getPageSize(), sortDir, sortedBy);

    Page<Device> devices = null;
    if (!this.netManagementOrganisation.equals(organisationIdentification)) {
        if (deviceFilter == null) {
            final DeviceFilter df = new DeviceFilter(organisationIdentification, null, null, null, null, null,
                    null, null, DeviceExternalManagedFilterType.BOTH, DeviceActivatedFilterType.BOTH,
                    DeviceInMaintenanceFilterType.BOTH, null, null, false, null, null, null, null, null, null,
                    false);
            devices = this.applyFilter(df, organisation, request);
        } else {
            deviceFilter.updateOrganisationIdentification(organisationIdentification);
            devices = this.applyFilter(deviceFilter, organisation, request);
        }
    } else {
        devices = this.applyFilter(deviceFilter, organisation, request);
    }

    if (devices == null) {
        LOGGER.info("No devices found");
        return null;
    }

    for (final Device device : devices.getContent()) {
        for (final DeviceAuthorization deviceAutorization : device.getAuthorizations()) {
            device.addOrganisation(deviceAutorization.getOrganisation().getOrganisationIdentification());
        }
    }

    return devices;
}

From source file:it.smartcommunitylab.carpooling.managers.CarPoolingManager.java

/**
 * read notifications.//from   www.  j  a v a  2 s  . c o m
 * 
 * @param userId
 * @param start
 * @param count
 * @return
 */
public List<Notification> readNotifications(String userId, int start, int count) {

    Page<Notification> notifications = notificationRepository.findByTargetUserId(userId,
            new PageRequest(start, count, Direction.DESC, "timestamp"));

    return notifications.getContent();

}

From source file:com.qingbo.ginkgo.ygb.customer.impl.CustomerServiceImpl.java

/**
 * ??//from  w w  w  . jav  a2 s . c o m
 */
@Override
public Result<PageObject<User>> page(SpecParam<User> specs, Pager pager) {
    // TODO Auto-generated method stub
    logger.info(SimpleLogFormater.formatParams(specs, pager));
    Result<PageObject<User>> result;
    // ?
    if (specs == null || pager == null) {
        result = errors.newFailure("CST1071");
        logger.info(SimpleLogFormater.formatResult(result));
        return result;
    }
    if (pager.getPageSize() <= 0) {
        result = errors.newFailure("CMS1072");
        logger.info(SimpleLogFormater.formatResult(result));
        return result;
    }
    // ?
    Pageable pageable = pager.getDirection() == null || pager.getProperties() == null
            ? new PageRequest(pager.getCurrentPage() - 1, pager.getPageSize())
            : new PageRequest(pager.getCurrentPage() - 1, pager.getPageSize(),
                    Direction.valueOf(pager.getDirection()), pager.getProperties().split(","));
    // ?
    specs.eq("deleted", false); //    
    // 
    Page<User> resultSet = null;
    try {
        resultSet = userRepository.findAll(SpecUtil.spec(specs), pageable);

    } catch (Exception e) {
        result = errors.newFailure("CST0008");
        logger.error(SimpleLogFormater.formatException(result.getMessage(), e));
        logger.info(SimpleLogFormater.formatResult(result));
        return result;
    }
    // 
    result = Result
            .newSuccess(new PageObject<User>((int) resultSet.getTotalElements(), resultSet.getContent()));
    logger.info(SimpleLogFormater.formatResult(result));
    return result;

}

From source file:com.okta.scim.UsersController.java

/**
 * Support pagination and filtering by username
 *
 * @param params Payload from HTTP request
 * @return JSON {@link Map} {@link ListResponse}
 *///from   w  w  w.j ava 2s  .c  o  m
@RequestMapping(method = RequestMethod.GET)
public @ResponseBody Map usersGet(@RequestParam Map<String, String> params) {
    Page<User> users;

    // If not given count, default to 100
    int count = (params.get("count") != null) ? Integer.parseInt(params.get("count")) : 100;

    // If not given startIndex, default to 1
    int startIndex = (params.get("startIndex") != null) ? Integer.parseInt(params.get("startIndex")) : 1;

    if (startIndex < 1) {
        startIndex = 1;
    }
    startIndex -= 1;

    PageRequest pageRequest = new PageRequest(startIndex, count);

    String filter = params.get("filter");
    if (filter != null && filter.contains("eq")) {
        String regex = "(\\w+) eq \"([^\"]*)\"";
        Pattern response = Pattern.compile(regex);

        Matcher match = response.matcher(filter);
        Boolean found = match.find();
        if (found) {
            String searchKeyName = match.group(1);
            String searchValue = match.group(2);
            switch (searchKeyName) {
            case "active":
                users = db.findByActive(Boolean.valueOf(searchValue), pageRequest);
                break;
            case "faimlyName":
                users = db.findByFamilyName(searchValue, pageRequest);
                break;
            case "givenName":
                users = db.findByGivenName(searchValue, pageRequest);
                break;
            default:
                // Defaults to username lookup
                users = db.findByUsername(searchValue, pageRequest);
                break;
            }
        } else {
            users = db.findAll(pageRequest);
        }
    } else {
        users = db.findAll(pageRequest);
    }

    List<User> foundUsers = users.getContent();
    int totalResults = foundUsers.size();

    // Convert optional values into Optionals for ListResponse Constructor
    ListResponse returnValue = new ListResponse(foundUsers, Optional.of(startIndex), Optional.of(count),
            Optional.of(totalResults));
    return returnValue.toScimResource();
}

From source file:edu.cmu.cs.lti.discoursedb.api.browsing.controller.BrowsingRestController.java

@RequestMapping(value = "/action/downloadQueryCsv/discoursedb_data.csv", method = RequestMethod.GET)
@ResponseBody//from  w  w w  .  j  av  a2 s.  c  o  m
String downloadQueryCsv(HttpServletResponse response, @RequestParam("query") String query,
        HttpServletRequest hsr, HttpSession session) throws IOException {

    securityUtils.authenticate(hsr, session);
    response.setContentType("application/csv; charset=utf-8");
    response.setHeader("Content-Disposition", "attachment");

    try {
        logger.info("Got query for csv: " + query);

        DdbQuery q = new DdbQuery(selector, discoursePartService, query);

        Page<BrowsingContributionResource> lbcr = q.retrieveAllContributions()
                .map(c -> new BrowsingContributionResource(c, annoService));

        StringBuilder output = new StringBuilder();
        ArrayList<String> headers = new ArrayList<String>();
        for (PropertyDescriptor pd : BeanUtils.getPropertyDescriptors(BrowsingContributionResource.class)) {
            String name = pd.getName();
            if (!name.equals("class") && !name.equals("id") && !name.equals("links")) {
                headers.add(name);
            }
        }
        output.append(String.join(",", headers));
        output.append("\n");

        for (BrowsingContributionResource bcr : lbcr.getContent()) {
            String comma = "";
            BeanWrapper wrap = PropertyAccessorFactory.forBeanPropertyAccess(bcr);
            for (String hdr : headers) {

                String item = "";
                try {
                    item = wrap.getPropertyValue(hdr).toString();
                    item = item.replaceAll("\"", "\"\"");
                    item = item.replaceAll("^\\[(.*)\\]$", "$1");
                } catch (Exception e) {
                    logger.info(e.toString() + " For header " + hdr + " item " + item);
                    item = "";
                }
                if (hdr.equals("annotations") && item.length() > 0) {
                    logger.info("Annotation is " + item);
                }
                output.append(comma + "\"" + item + "\"");
                comma = ",";
            }
            output.append("\n");
        }
        return output.toString();
    } catch (Exception e) {
        return "ERROR:" + e.getMessage();
    }
}

From source file:com.github.vanroy.springdata.jest.JestElasticsearchTemplateTests.java

@Test
public void shouldReturnResultsWithScanAndScrollForGivenSearchQuery() {
    //given/*  ww w  .j a va  2  s .  c o  m*/
    List<IndexQuery> entities = createSampleEntitiesWithMessage("Test message", 30);
    // when
    elasticsearchTemplate.bulkIndex(entities);
    elasticsearchTemplate.refresh(SampleEntity.class);
    // then

    SearchQuery searchQuery = new NativeSearchQueryBuilder().withQuery(matchAllQuery()).withIndices(INDEX_NAME)
            .withTypes(TYPE_NAME).withPageable(new PageRequest(0, 10)).build();

    String scrollId = elasticsearchTemplate.scan(searchQuery, 1000, false);
    List<SampleEntity> sampleEntities = new ArrayList<SampleEntity>();
    boolean hasRecords = true;
    while (hasRecords) {
        Page<SampleEntity> page = elasticsearchTemplate.scroll(scrollId, 5000L, SampleEntity.class);
        if (page.hasContent()) {
            sampleEntities.addAll(page.getContent());
        } else {
            hasRecords = false;
        }
    }
    elasticsearchTemplate.clearScroll(scrollId);
    assertThat(sampleEntities.size(), is(equalTo(30)));
}

From source file:com.github.vanroy.springdata.jest.JestElasticsearchTemplateTests.java

@Test
public void shouldReturnResultsWithScanAndScrollForGivenCriteriaQueryAndClass() {
    //given/* w  w w.  ja  v a  2s .c  o m*/
    List<IndexQuery> entities = createSampleEntitiesWithMessage("Test message", 30);
    // when
    elasticsearchTemplate.bulkIndex(entities);
    elasticsearchTemplate.refresh(SampleEntity.class);
    // then

    CriteriaQuery criteriaQuery = new CriteriaQuery(new Criteria());
    criteriaQuery.setPageable(new PageRequest(0, 10));

    String scrollId = elasticsearchTemplate.scan(criteriaQuery, 1000, false, SampleEntity.class);
    List<SampleEntity> sampleEntities = new ArrayList<SampleEntity>();
    boolean hasRecords = true;
    while (hasRecords) {
        Page<SampleEntity> page = elasticsearchTemplate.scroll(scrollId, 5000L, SampleEntity.class);
        if (page.hasContent()) {
            sampleEntities.addAll(page.getContent());
        } else {
            hasRecords = false;
        }
    }
    elasticsearchTemplate.clearScroll(scrollId);
    assertThat(sampleEntities.size(), is(equalTo(30)));
}

From source file:com.github.vanroy.springdata.jest.JestElasticsearchTemplateTests.java

@Test
public void shouldReturnResultsWithScanAndScrollForGivenSearchQueryAndClass() {
    //given/*from w w w  .j  a  v  a2 s  . c  om*/
    List<IndexQuery> entities = createSampleEntitiesWithMessage("Test message", 30);
    // when
    elasticsearchTemplate.bulkIndex(entities);
    elasticsearchTemplate.refresh(SampleEntity.class);
    // then

    SearchQuery searchQuery = new NativeSearchQueryBuilder().withQuery(matchAllQuery())
            .withPageable(new PageRequest(0, 10)).build();

    String scrollId = elasticsearchTemplate.scan(searchQuery, 1000, false, SampleEntity.class);
    List<SampleEntity> sampleEntities = new ArrayList<SampleEntity>();
    boolean hasRecords = true;
    while (hasRecords) {
        Page<SampleEntity> page = elasticsearchTemplate.scroll(scrollId, 5000L, SampleEntity.class);
        if (page.hasContent()) {
            sampleEntities.addAll(page.getContent());
        } else {
            hasRecords = false;
        }
    }
    elasticsearchTemplate.clearScroll(scrollId);
    assertThat(sampleEntities.size(), is(equalTo(30)));
}