KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > exoplatform > faces > core > component > UIListStringInput


1 /***************************************************************************
2  * Copyright 2001-2003 The eXo Platform SARL All rights reserved. *
3  * Please look at license.txt in info directory for more license detail. *
4  **************************************************************************/

5 package org.exoplatform.faces.core.component;
6
7 import java.util.List JavaDoc ;
8 import java.util.ArrayList JavaDoc ;
9 import java.util.Map JavaDoc ;
10 import java.io.IOException JavaDoc ;
11
12 import javax.faces.context.FacesContext;
13 import javax.faces.context.ResponseWriter;
14 /**
15  * Wed, Dec 22, 2003 @ 23:14
16  * @author: Tuan Nguyen
17  * @email: tuan08@users.sourceforge.net
18  * @version: $Id: UIListStringInput.java,v 1.3 2004/08/16 14:20:41 tuan08 Exp $
19  */

20 public class UIListStringInput extends UIInput {
21   protected List JavaDoc list_ ;
22
23   public UIListStringInput(String JavaDoc name, List JavaDoc list) {
24     name_ = name ;
25     list_ = new ArrayList JavaDoc(5);
26     if (list != null) list_.addAll(list) ;
27   }
28
29   final public List JavaDoc getValues() { return list_ ; }
30
31   final public UIListStringInput setValues(List JavaDoc list) {
32     list_.clear() ;
33     if (list != null) list_.addAll(list) ;
34     return this ;
35   }
36
37   public void decode(FacesContext context) {
38     Map JavaDoc paramMap = context.getExternalContext().getRequestParameterValuesMap() ;
39     String JavaDoc[] values = (String JavaDoc[]) paramMap.get(name_) ;
40     if (values != null) {
41       list_.clear();
42       for (int i =0; i < values.length ; i++) {
43         list_.add(values[i]) ;
44       }
45     }
46   }
47
48   public void encodeBegin(FacesContext context) throws IOException JavaDoc {
49     ResponseWriter w = context.getResponseWriter() ;
50     for (int i =0; i < list_.size(); i++) {
51       String JavaDoc value = (String JavaDoc) list_.get(i) ;
52       if (value == null) value = "" ;
53       w.write("<input name='"); w.write(name_); w.write("'") ;
54       w.write(" value='"); w.write(value); w.write("'") ;
55       if (getClazz() != null) {
56         w.write(" class='"); w.write(getClazz()); w.write("'") ;
57       }
58       w.write("/><br/>") ;
59     }
60   }
61 }
Popular Tags