KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jboss > util > propertyeditor > IntArrayEditor


1 /*
2   * JBoss, Home of Professional Open Source
3   * Copyright 2005, JBoss Inc., and individual contributors as indicated
4   * by the @authors tag. See the copyright.txt in the distribution for a
5   * full listing of individual contributors.
6   *
7   * This is free software; you can redistribute it and/or modify it
8   * under the terms of the GNU Lesser General Public License as
9   * published by the Free Software Foundation; either version 2.1 of
10   * the License, or (at your option) any later version.
11   *
12   * This software is distributed in the hope that it will be useful,
13   * but WITHOUT ANY WARRANTY; without even the implied warranty of
14   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15   * Lesser General Public License for more details.
16   *
17   * You should have received a copy of the GNU Lesser General Public
18   * License along with this software; if not, write to the Free
19   * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
20   * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
21   */

22 package org.jboss.util.propertyeditor;
23
24 import java.beans.PropertyEditorSupport JavaDoc;
25 import java.util.StringTokenizer JavaDoc;
26
27 /**
28  * A property editor for int[].
29  *
30  * @version <tt>$Revision: 1958 $</tt>
31  */

32 public class IntArrayEditor extends PropertyEditorSupport JavaDoc
33 {
34    /** Build a int[] from comma or eol seperated elements
35     *
36     */

37    public void setAsText(final String JavaDoc text)
38    {
39       StringTokenizer JavaDoc stok = new StringTokenizer JavaDoc(text, ",\r\n");
40       int[] theValue = new int[stok.countTokens()];
41       int i = 0;
42       while (stok.hasMoreTokens())
43       {
44          theValue[i++] = Integer.decode(stok.nextToken()).intValue();
45       }
46       setValue(theValue);
47    }
48
49    /**
50     * @return a comma seperated string of the array elements
51     */

52    public String JavaDoc getAsText()
53    {
54       int[] theValue = (int[]) getValue();
55       StringBuffer JavaDoc text = new StringBuffer JavaDoc();
56       int length = theValue == null ? 0 : theValue.length;
57       for(int n = 0; n < length; n ++)
58       {
59          if (n > 0)
60             text.append(',');
61          text.append(theValue[n]);
62       }
63       return text.toString();
64    }
65 }
66
Popular Tags