001: /**
002: * $Id: DirectReportPaginator.java,v 1.1 2005/09/05 07:41:31 nk137934 Exp $
003: * Copyright 2005 Sun Microsystems, Inc. All
004: * rights reserved. Use of this product is subject
005: * to license terms. Federal Acquisitions:
006: * Commercial Software -- Government Users
007: * Subject to Standard License Terms and
008: * Conditions.
009: *
010: * Sun, Sun Microsystems, the Sun logo, and Sun ONE
011: * are trademarks or registered trademarks of Sun Microsystems,
012: * Inc. in the United States and other countries.
013: */package com.sun.portal.sapportlet.manager;
014:
015: import java.util.List;
016: import java.util.ArrayList;
017: import java.util.Comparator;
018: import java.util.Collections;
019:
020: import com.sun.portal.sapportlet.util.Paginator;
021:
022: public class DirectReportPaginator extends Paginator {
023:
024: private int sortField;
025: private int sortOrder;
026:
027: /** Creates a new instance of CustomerPaginator */
028: public DirectReportPaginator(List list) {
029:
030: super (list);
031: }
032:
033: public void init() {
034:
035: // Default is an ascending sort by customer number
036: sortAscByEmpNumber();
037: }
038:
039: public void sortAscByEmpNumber() {
040: //set currentPageNumber to 1
041: this .sortField = DirectReportComparator.SORT_FIELD_DR_EMPNUMBER;
042: this .sortOrder = DirectReportComparator.SORT_ORDER_ASCENDING;
043: sort();
044: }
045:
046: public void sortDscByEmpNumber() {
047:
048: this .sortField = DirectReportComparator.SORT_FIELD_DR_EMPNUMBER;
049: this .sortOrder = DirectReportComparator.SORT_ORDER_DESCENDING;
050: sort();
051:
052: }
053:
054: public void sortAscByFullName() {
055: this .sortField = DirectReportComparator.SORT_FIELD_DR_FULLNAME;
056: this .sortOrder = DirectReportComparator.SORT_ORDER_ASCENDING;
057: sort();
058: }
059:
060: public void sortDscByFullName() {
061: this .sortField = DirectReportComparator.SORT_FIELD_DR_FULLNAME;
062: this .sortOrder = DirectReportComparator.SORT_ORDER_DESCENDING;
063: sort();
064: }
065:
066: public void sortAscByShortName() {
067: this .sortField = DirectReportComparator.SORT_FIELD_DR_SHORTNAME;
068: this .sortOrder = DirectReportComparator.SORT_ORDER_ASCENDING;
069: sort();
070: }
071:
072: public void sortDscByShortName() {
073: this .sortField = DirectReportComparator.SORT_FIELD_DR_SHORTNAME;
074: this .sortOrder = DirectReportComparator.SORT_ORDER_DESCENDING;
075: sort();
076: }
077:
078: public void sortAscByBeginDate() {
079: this .sortField = DirectReportComparator.SORT_FIELD_DR_BEGINDATE;
080: this .sortOrder = DirectReportComparator.SORT_ORDER_ASCENDING;
081: sort();
082: }
083:
084: public void sortDscByBeginDate() {
085: this .sortField = DirectReportComparator.SORT_FIELD_DR_BEGINDATE;
086: this .sortOrder = DirectReportComparator.SORT_ORDER_DESCENDING;
087: sort();
088: }
089:
090: private void sort() {
091:
092: setPageNumber(1);
093: DirectReportComparator comparator = DirectReportComparator
094: .getComparator(sortField, sortOrder);
095: Collections.sort(getAllItems(), comparator);
096: }
097:
098: public int getSortField() {
099: return sortField;
100: }
101:
102: public int getSortOrder() {
103: return sortOrder;
104: }
105: }
|