View Javadoc

1   /**
2    * Copyright 2010 The Kuali Foundation Licensed under the
3    * Educational Community License, Version 2.0 (the "License"); you may
4    * not use this file except in compliance with the License. You may
5    * obtain a copy of the License at
6    *
7    * http://www.osedu.org/licenses/ECL-2.0
8    *
9    * Unless required by applicable law or agreed to in writing,
10   * software distributed under the License is distributed on an "AS IS"
11   * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
12   * or implied. See the License for the specific language governing
13   * permissions and limitations under the License.
14   */
15  
16  package org.kuali.student.common.ui.client.widgets.searchtable;
17  
18  import java.util.HashMap;
19  import java.util.Map;
20  
21  import org.kuali.student.r1.common.dto.Idable;
22  
23  import com.google.gwt.user.client.rpc.IsSerializable;
24  
25  public class ResultRow implements IsSerializable, Idable,Comparable<ResultRow>{
26      private String id;
27      private Map<String, String> columnValues = new HashMap<String, String>();
28      static String NAME_COLUMN_KEY = "name";
29      static String TYPE_COLUMN_KEY = "type";
30      
31      @Override
32      public String getId() {
33          return id;
34      }
35  
36      @Override
37      public void setId(String id) {
38          this.id = id; 
39      }
40  
41      public String getValue(String columnKey) {
42          return columnValues.get(columnKey);
43      }
44  
45      public void setValue(String columnKey, String value) {
46          columnValues.put(columnKey, value);        
47      }
48  
49      public Map<String, String> getColumnValues() {
50      	return columnValues;
51      }
52      
53   	@Override
54  	public int compareTo(ResultRow row) {
55  		// TODO Auto-generated method stub
56   	   if(columnValues.get(TYPE_COLUMN_KEY).compareToIgnoreCase(row.getColumnValues().get(TYPE_COLUMN_KEY))==0)
57   	     return columnValues.get(NAME_COLUMN_KEY).compareToIgnoreCase(row.getColumnValues().get(NAME_COLUMN_KEY));
58   	   else
59   		 return columnValues.get(TYPE_COLUMN_KEY).compareToIgnoreCase(row.getColumnValues().get(TYPE_COLUMN_KEY));
60  	}
61  }