KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > java > j2seplatform > platformdefinition > FileObjectPropertyEditor


1 /*
2  * The contents of this file are subject to the terms of the Common Development
3  * and Distribution License (the License). You may not use this file except in
4  * compliance with the License.
5  *
6  * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
7  * or http://www.netbeans.org/cddl.txt.
8  *
9  * When distributing Covered Code, include this CDDL Header Notice in each file
10  * and include the License file at http://www.netbeans.org/cddl.txt.
11  * If applicable, add the following below the CDDL Header, with the fields
12  * enclosed by brackets [] replaced by your own identifying information:
13  * "Portions Copyrighted [year] [name of copyright owner]"
14  *
15  * The Original Software is NetBeans. The Initial Developer of the Original
16  * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
17  * Microsystems, Inc. All Rights Reserved.
18  */

19 package org.netbeans.modules.java.j2seplatform.platformdefinition;
20
21 import org.openide.filesystems.FileObject;
22 import org.openide.filesystems.FileUtil;
23
24 import java.beans.PropertyEditorSupport JavaDoc;
25 import java.io.File JavaDoc;
26 import java.util.ArrayList JavaDoc;
27 import java.util.Iterator JavaDoc;
28 import java.util.List JavaDoc;
29 import java.util.StringTokenizer JavaDoc;
30
31 public class FileObjectPropertyEditor extends PropertyEditorSupport JavaDoc {
32
33     public String JavaDoc getAsText() {
34         try {
35             List JavaDoc fileobjs = (List JavaDoc) this.getValue();
36             StringBuffer JavaDoc result = new StringBuffer JavaDoc ();
37             boolean first = true;
38             for (Iterator JavaDoc it = fileobjs.iterator(); it.hasNext();) {
39                 FileObject fo = (FileObject) it.next ();
40                 File JavaDoc f = FileUtil.toFile(fo);
41                 if (f != null) {
42                     if (!first) {
43                         result.append (File.pathSeparator);
44                     }
45                     else {
46                         first = false;
47                     }
48                     result.append(f.getAbsolutePath());
49                 }
50             }
51             return result.toString ();
52         } catch (Exception JavaDoc e) {
53             e.printStackTrace();
54             return "";
55         }
56     }
57
58     public void setAsText(String JavaDoc text) throws IllegalArgumentException JavaDoc {
59         try {
60             List JavaDoc fileObjs = new ArrayList JavaDoc ();
61             if (text != null) {
62                 StringTokenizer JavaDoc tk = new StringTokenizer JavaDoc (text, File.pathSeparator);
63                 while (tk.hasMoreTokens()) {
64                     String JavaDoc path = tk.nextToken();
65                     File JavaDoc f = new File JavaDoc (path);
66                     fileObjs.add(FileUtil.toFileObject(f));
67                 }
68             }
69             setValue (fileObjs);
70         } catch (Exception JavaDoc e) {
71             e.printStackTrace();
72         }
73     }
74
75 }
76
Popular Tags