001/*******************************************************************************
002 * Copyright 2017 The MIT Internet Trust Consortium
003 *
004 * Licensed under the Apache License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 *   http://www.apache.org/licenses/LICENSE-2.0
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 *******************************************************************************/
016package org.mitre.data;
017
018/**
019 * Default implementation of PageCriteria which specifies
020 * both page to be retrieved and page size in the constructor.
021 *
022 * @author Colm Smyth
023 */
024public class DefaultPageCriteria implements PageCriteria {
025
026        private static final int DEFAULT_PAGE_NUMBER = 0;
027        private static final int DEFAULT_PAGE_SIZE = 100;
028
029        private int pageNumber;
030        private int pageSize;
031
032        public DefaultPageCriteria(){
033                this(DEFAULT_PAGE_NUMBER, DEFAULT_PAGE_SIZE);
034        }
035
036        public DefaultPageCriteria(int pageNumber, int pageSize) {
037                this.pageNumber = pageNumber;
038                this.pageSize = pageSize;
039        }
040
041        @Override
042        public int getPageNumber() {
043                return pageNumber;
044        }
045
046        @Override
047        public int getPageSize() {
048                return pageSize;
049        }
050}