001: /**
002: * $Id: NamefinderDetailPaginator.java,v 1.1 2005/09/05 07:35:20 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.namefinder;
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 NamefinderDetailPaginator extends Paginator {
023:
024: private int sortField;
025: private int sortOrder;
026:
027: /** Creates a new instance of CustomerPaginator */
028: public NamefinderDetailPaginator(List namefinderDetails) {
029:
030: super (namefinderDetails);
031: }
032:
033: public void init() {
034:
035: // Default is an ascending sort by customer number
036: sortAscByEmpNumber();
037: }
038:
039: // Ascending sort by customer number
040: public void sortAscByEmpNumber() {
041: //set currentPageNumber to 1
042: this .sortField = NamefinderDetailComparator.SORT_FIELD_EMP_NUMBER;
043: this .sortOrder = NamefinderDetailComparator.SORT_ORDER_ASCENDING;
044: sort();
045: }
046:
047: public void sortDscByEmpNumber() {
048:
049: this .sortField = NamefinderDetailComparator.SORT_FIELD_EMP_NUMBER;
050: this .sortOrder = NamefinderDetailComparator.SORT_ORDER_DESCENDING;
051: sort();
052:
053: }
054:
055: public void sortAscByFirstName() {
056:
057: this .sortField = NamefinderDetailComparator.SORT_FIELD_FIRST_NAME;
058: this .sortOrder = NamefinderDetailComparator.SORT_ORDER_ASCENDING;
059: sort();
060: }
061:
062: public void sortDscByFirstName() {
063:
064: this .sortField = NamefinderDetailComparator.SORT_FIELD_FIRST_NAME;
065: this .sortOrder = NamefinderDetailComparator.SORT_ORDER_DESCENDING;
066: sort();
067: }
068:
069: public void sortAscByLastName() {
070:
071: this .sortField = NamefinderDetailComparator.SORT_FIELD_LAST_NAME;
072: this .sortOrder = NamefinderDetailComparator.SORT_ORDER_ASCENDING;
073: sort();
074: }
075:
076: public void sortDscByLastName() {
077:
078: this .sortField = NamefinderDetailComparator.SORT_FIELD_LAST_NAME;
079: this .sortOrder = NamefinderDetailComparator.SORT_ORDER_DESCENDING;
080: sort();
081: }
082:
083: public void sortAscByRoomNum() {
084:
085: this .sortField = NamefinderDetailComparator.SORT_FIELD_ROOM_NUM;
086: this .sortOrder = NamefinderDetailComparator.SORT_ORDER_ASCENDING;
087: sort();
088: }
089:
090: public void sortDscByRoomNum() {
091:
092: this .sortField = NamefinderDetailComparator.SORT_FIELD_ROOM_NUM;
093: this .sortOrder = NamefinderDetailComparator.SORT_ORDER_DESCENDING;
094: sort();
095: }
096:
097: public void sortAscByBuildingNum() {
098:
099: this .sortField = NamefinderDetailComparator.SORT_FIELD_BUILDING_NUM;
100: this .sortOrder = NamefinderDetailComparator.SORT_ORDER_ASCENDING;
101: sort();
102: }
103:
104: public void sortDscByBuildingNum() {
105:
106: this .sortField = NamefinderDetailComparator.SORT_FIELD_BUILDING_NUM;
107: this .sortOrder = NamefinderDetailComparator.SORT_ORDER_DESCENDING;
108: sort();
109: }
110:
111: public void sortAscByExtension() {
112:
113: this .sortField = NamefinderDetailComparator.SORT_FIELD_EXTENSION;
114: this .sortOrder = NamefinderDetailComparator.SORT_ORDER_ASCENDING;
115: sort();
116: }
117:
118: public void sortDscByExtension() {
119:
120: this .sortField = NamefinderDetailComparator.SORT_FIELD_EXTENSION;
121: this .sortOrder = NamefinderDetailComparator.SORT_ORDER_DESCENDING;
122: sort();
123: }
124:
125: public void sortAscByEmail() {
126:
127: this .sortField = NamefinderDetailComparator.SORT_FIELD_EMAIL;
128: this .sortOrder = NamefinderDetailComparator.SORT_ORDER_ASCENDING;
129: sort();
130: }
131:
132: public void sortDscByEmail() {
133:
134: this .sortField = NamefinderDetailComparator.SORT_FIELD_EMAIL;
135: this .sortOrder = NamefinderDetailComparator.SORT_ORDER_DESCENDING;
136: sort();
137: }
138:
139: private void sort() {
140:
141: setPageNumber(1);
142: NamefinderDetailComparator comparator = NamefinderDetailComparator
143: .getComparator(sortField, sortOrder);
144: Collections.sort(getAllItems(), comparator);
145: }
146:
147: public int getSortField() {
148: return sortField;
149: }
150:
151: public int getSortOrder() {
152: return sortOrder;
153: }
154: }
|