Project

General

Profile

Download (1.78 KB) Statistics
| Branch: | Tag: | Revision:
1
// $Id: TaxonController.java 5473 2009-03-25 13:42:07Z a.kohlbecker $
2
/**
3
* Copyright (C) 2011 EDIT
4
* European Distributed Institute of Taxonomy
5
* http://www.e-taxonomy.eu
6
*
7
* The contents of this file are subject to the Mozilla Public License Version 1.1
8
* See LICENSE.TXT at the top of this package for the full license terms.
9
*/
10

    
11
package eu.etaxonomy.cdm.remote.controller.util;
12

    
13
import static java.net.HttpURLConnection.HTTP_BAD_REQUEST;
14

    
15
import java.io.IOException;
16

    
17
import javax.servlet.http.HttpServletResponse;
18

    
19
import eu.etaxonomy.cdm.remote.controller.HttpStatusMessage;
20

    
21
/**
22
 * @author a.kohlbecker
23
 * @date 22.08.2011
24
 *
25
 */
26
public class PagerParameters {
27

    
28
    private Integer pageSize;
29

    
30
    private Integer pageNumber;
31

    
32
    public void setPageSize(Integer pageSize) {
33
        this.pageSize = pageSize;
34
    }
35

    
36
    public Integer getPageSize() {
37
        return pageSize;
38
    }
39

    
40
    public void setPageNumber(Integer pageNumber) {
41
        this.pageNumber = pageNumber;
42
    }
43

    
44
    public Integer getPageNumber() {
45
        return pageNumber;
46
    }
47

    
48
    public PagerParameters(Integer pageSize, Integer pageNumber) {
49
        this.pageSize = pageSize;
50
        this.pageNumber = pageNumber;
51
    }
52

    
53
    public void normalizeAndValidate(HttpServletResponse response) throws IOException{
54

    
55
        if(pageNumber == null){
56
            pageNumber = 0;
57
        }
58
        if(pageSize == null){
59
            pageSize = 0;
60
        }
61
        if(pageNumber < 0){
62
            HttpStatusMessage.fromString("The query parameter 'pageNumber' must not be a negative number").setStatusCode(HTTP_BAD_REQUEST).send(response);
63
        }
64
        if(pageSize < 0){
65
            HttpStatusMessage.fromString("The query parameter 'pageSize' must not be a negative number").setStatusCode(HTTP_BAD_REQUEST).send(response);
66
        }
67
    }
68

    
69

    
70
}
(2-2/2)