KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > j2ee > jboss4 > ide > ui > AddServerLocationPanel


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.j2ee.jboss4.ide.ui;
20
21 import java.io.File JavaDoc;
22 import org.openide.WizardDescriptor;
23 import org.openide.util.HelpCtx;
24 import java.awt.Component JavaDoc;
25 import java.util.HashSet JavaDoc;
26 import java.util.Iterator JavaDoc;
27 import java.util.Set JavaDoc;
28 import javax.swing.event.ChangeEvent JavaDoc;
29 import javax.swing.event.ChangeListener JavaDoc;
30 import org.openide.util.NbBundle;
31
32 /**
33  *
34  * @author Ivan Sidorkin
35  */

36 public class AddServerLocationPanel implements WizardDescriptor.Panel, ChangeListener JavaDoc {
37     private final static String JavaDoc PROP_ERROR_MESSAGE = "WizardPanel_errorMessage"; // NOI18N
38

39     private JBInstantiatingIterator instantiatingIterator;
40     
41     private AddServerLocationVisualPanel component;
42     private WizardDescriptor wizard;
43     private transient Set JavaDoc listeners = new HashSet JavaDoc(1);
44     
45     
46     
47     
48     public AddServerLocationPanel(JBInstantiatingIterator instantiatingIterator){
49         this.instantiatingIterator = instantiatingIterator;
50     }
51     
52     public void stateChanged(ChangeEvent JavaDoc ev) {
53         fireChangeEvent(ev);
54     }
55     
56     private void fireChangeEvent(ChangeEvent JavaDoc ev) {
57         //@todo implement it
58

59         Iterator JavaDoc it;
60         synchronized (listeners) {
61             it = new HashSet JavaDoc(listeners).iterator();
62         }
63         while (it.hasNext()) {
64             ((ChangeListener JavaDoc)it.next()).stateChanged(ev);
65         }
66     }
67     
68     public Component JavaDoc getComponent() {
69         if (component == null) {
70             component = new AddServerLocationVisualPanel();
71             component.addChangeListener(this);
72         }
73         return component;
74     }
75     
76     public HelpCtx getHelp() {
77         return new HelpCtx("j2eeplugins_registering_app_server_jboss_location"); //NOI18N
78
}
79     
80     public boolean isValid() {
81         String JavaDoc locationStr = ((AddServerLocationVisualPanel)getComponent()).getInstallLocation();
82         File JavaDoc location = new File JavaDoc(locationStr);
83         if (!JBPluginUtils.isGoodJBServerLocation4x(location) &&
84             !JBPluginUtils.isGoodJBServerLocation5x(location))
85         {
86             wizard.putProperty(PROP_ERROR_MESSAGE, NbBundle.getMessage(AddServerLocationPanel.class, "MSG_InvalidServerLocation")); // NOI18N
87
return false;
88         }
89         
90         wizard.putProperty(PROP_ERROR_MESSAGE, null);
91         JBPluginProperties.getInstance().setInstallLocation(((AddServerLocationVisualPanel)getComponent()).getInstallLocation());
92         JBPluginProperties.getInstance().saveProperties();
93         instantiatingIterator.setInstallLocation(locationStr);
94         return true;
95     }
96
97     public void removeChangeListener(ChangeListener JavaDoc l) {
98         synchronized (listeners) {
99             listeners.remove(l);
100         }
101     }
102     
103     public void addChangeListener(ChangeListener JavaDoc l) {
104         synchronized (listeners) {
105             listeners.add(l);
106         }
107     }
108     
109     public void readSettings(Object JavaDoc settings) {
110         if (wizard == null)
111             wizard = (WizardDescriptor)settings;
112     }
113     
114     public void storeSettings(Object JavaDoc settings) {
115     }
116 }
117
Popular Tags