View Javadoc

1   /*   Copyright (C) 2003 Finalist IT Group
2    *
3    *   This file is part of JAG - the Java J2EE Application Generator
4    *
5    *   JAG is free software; you can redistribute it and/or modify
6    *   it under the terms of the GNU General Public License as published by
7    *   the Free Software Foundation; either version 2 of the License, or
8    *   (at your option) any later version.
9    *   JAG is distributed in the hope that it will be useful,
10   *   but WITHOUT ANY WARRANTY; without even the implied warranty of
11   *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12   *   GNU General Public License for more details.
13   *   You should have received a copy of the GNU General Public License
14   *   along with JAG; if not, write to the Free Software
15   *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16   */
17  
18  package com.finalist.jaggenerator.modules;
19  
20  import com.finalist.jaggenerator.*;
21  
22  import javax.swing.*;
23  import javax.swing.tree.*;
24  
25  import org.w3c.dom.*;
26  
27  /***
28   *
29   * @author  hillie
30   */
31  public class Paths extends DefaultMutableTreeNode implements JagBean {
32  
33  
34     /***
35      * The following paths are predefined for non-velocity sources.
36      */
37     public final static String CONF_GENERAL_DIR = "/conf/conf-general";
38     public final static String CONF_STRUTS_DIR = "/conf/conf-struts";
39     public final static String CONF_SWING_DIR = "/conf/conf-swing";
40     public final static String CONF_TAPESTRY_DIR = "/conf/conf-tapestry";
41  
42     public final static String JAVA_SERVICE_DIR = "/src/java-service";
43  
44     public final static String JAVA_STRUTS_DIR = "/src/java-struts";
45     public final static String JAVA_TAPESTRY_DIR = "/src/java-tapestry";
46     public final static String JAVA_WEB_STRUTS_DIR = "/src/web-struts";
47     public final static String JAVA_WEB_TAPESTRY_DIR = "/src/web-tapestry";
48  
49  
50     public final static String JAVA_EJB2_DIR = "/src/java-ejb2";
51     public final static String JAVA_EJB3_DIR = "/src/java-ejb3";
52     public final static String JAVA_HIBERNATE2_DIR = "/src/java-hibernate2";
53     public final static String JAVA_HIBERNATE3_DIR = "/src/java-hibernate3";
54  
55     public final static String JAVA_TEST_DIR = "/src/test";
56     public final static String JAVA_MOCK_DIR = "/src/java-mock";
57     public final static String JAVA_SWING_DIR = "/src/java-swing";
58  
59     /*** Creates new form BeanForm */
60     public Paths() {
61        initComponents();
62     }
63  
64     public Paths(Element el) {
65        initComponents();
66        NodeList nl = el.getElementsByTagName("module-data");
67        for (int i = 0; i < nl.getLength(); i++) {
68           Element child = (Element) nl.item(i);
69           String attName = child.getAttribute("name");
70           String value = null;
71           if (child.getFirstChild() == null)
72              value = null;
73           else
74              value = child.getFirstChild().getNodeValue();
75           if (value != null) {
76               if (attName.equalsIgnoreCase("service_output")) {
77                  serviceOutText.setText(value);
78                  continue;
79               }
80              if (attName.equalsIgnoreCase("hibernate_output")) {
81                 hibernateOutText.setText(value);
82                 continue;
83              }
84              if (attName.equalsIgnoreCase("ejb_output")) {
85                 ejbOutText.setText(value);
86                 continue;
87              }
88              if (attName.equalsIgnoreCase("web_output")) {
89                 webOutText.setText(value);
90                 continue;
91              }
92              if (attName.equalsIgnoreCase("jsp_output")) {
93                 jspOutText.setText(value);
94                 continue;
95              }
96              if (attName.equalsIgnoreCase("config_output")) {
97                 configText.setText(value);
98                 continue;
99              }
100             if (attName.equalsIgnoreCase("test_output")) {
101                testOutText.setText(value);
102                continue;
103             }
104             if (attName.equalsIgnoreCase("mock_output")) {
105                mockOutText.setText(value);
106                continue;
107             }
108             if (attName.equalsIgnoreCase("swing_output")) {
109                swingOutText.setText(value);
110                continue;
111             }
112          }
113       }
114    }
115 
116 
117    public String toString() {
118       return "Paths";
119    }
120 
121    public JPanel getPanel() {
122       return panel;
123    }
124 
125    public void getXML(Element el) {
126       Document doc = el.getOwnerDocument();
127       Element module = doc.createElement("module");
128       module.setAttribute("name", "paths");
129 
130        Element serviceOut = doc.createElement("module-data");
131        serviceOut.setAttribute("name", "service_output");
132        if (serviceOutText.getText() != null) {
133          serviceOut.appendChild(doc.createTextNode(serviceOutText.getText()));
134        }
135        module.appendChild(serviceOut);
136 
137       Element hibernateOut = doc.createElement("module-data");
138       hibernateOut.setAttribute("name", "hibernate_output");
139       if (hibernateOutText.getText() != null) {
140         hibernateOut.appendChild(doc.createTextNode(hibernateOutText.getText()));
141       }
142       module.appendChild(hibernateOut);
143 
144       Element ejbOut = doc.createElement("module-data");
145       ejbOut.setAttribute("name", "ejb_output");
146       if (ejbOutText.getText() != null) {
147         ejbOut.appendChild(doc.createTextNode(ejbOutText.getText()));
148       }
149       module.appendChild(ejbOut);
150 
151       Element webOut = doc.createElement("module-data");
152       webOut.setAttribute("name", "web_output");
153       if (webOutText.getText() != null) {
154         webOut.appendChild(doc.createTextNode(webOutText.getText()));
155       }
156       module.appendChild(webOut);
157 
158       Element testOut = doc.createElement("module-data");
159       testOut.setAttribute("name", "test_output");
160       if (testOutText.getText() != null) {
161         testOut.appendChild(doc.createTextNode(testOutText.getText()));
162       }
163       module.appendChild(testOut);
164 
165       Element jspOut = doc.createElement("module-data");
166       jspOut.setAttribute("name", "jsp_output");
167       if (jspOutText.getText() != null) {
168         jspOut.appendChild(doc.createTextNode(jspOutText.getText()));
169       }
170       module.appendChild(jspOut);
171 
172       Element configXml = doc.createElement("module-data");
173       configXml.setAttribute("name", "config_output");
174       if (configText.getText() != null) {
175         configXml.appendChild(doc.createTextNode(configText.getText()));
176       }
177       module.appendChild(configXml);
178 
179       Element mockXml = doc.createElement("module-data");
180       mockXml.setAttribute("name", "mock_output");
181       if (mockOutText.getText() != null) {
182         mockXml.appendChild(doc.createTextNode(mockOutText.getText()));
183       }
184       module.appendChild(mockXml);
185 
186       Element swingXml = doc.createElement("module-data");
187       swingXml.setAttribute("name", "swing_output");
188       if (swingOutText.getText() != null) {
189         swingXml.appendChild(doc.createTextNode(swingOutText.getText()));
190       }
191       module.appendChild(swingXml);
192       el.appendChild(module);
193    }
194 
195    public String getSwingOutput() {
196       return swingOutText.getText();
197    }
198    public String getMockOutput() {
199       return mockOutText.getText();
200    }
201 
202     public String getServiceOutput() {
203        return serviceOutText.getText();
204     }
205 
206    public String getHibernateOutput() {
207       return hibernateOutText.getText();
208    }
209 
210    public String getConfigOutput() {
211       return configText.getText();
212    }
213 
214    public String getJspOutput() {
215       return jspOutText.getText();
216    }
217 
218    public String getTestOutput() {
219       return testOutText.getText();
220    }
221 
222    public String getWebOutput() {
223       return webOutText.getText();
224    }
225 
226    public String getEjbOutput() {
227       return ejbOutText.getText();
228    }
229 
230    public void setSwingOutput(String text) {
231       swingOutText.setText(text);
232    }
233 
234    public void setMockOutput(String text) {
235       mockOutText.setText(text);
236    }
237 
238     public void setServiceOutput(String text) {
239        serviceOutText.setText(text);
240     }
241 
242    public void setHibernateOutput(String text) {
243       hibernateOutText.setText(text);
244    }
245 
246    public void setConfigOutput(String text) {
247       configText.setText(text);
248    }
249 
250    public void setJspOutput(String text) {
251       jspOutText.setText(text);
252    }
253 
254    public void setTestOutput(String text) {
255       testOutText.setText(text);
256    }
257 
258    public void setWebOutput(String text) {
259       webOutText.setText(text);
260    }
261 
262    public void setEjbOutput(String text) {
263       ejbOutText.setText(text);
264    }
265 
266 
267    public String getRefName() {
268       return "paths";
269    }
270 
271 
272    /*** This method is called from within the constructor to
273     * initialize the form.
274     * WARNING: Do NOT modify this code. The content of this method is
275     * always regenerated by the Form Editor.
276     */
277     // <editor-fold defaultstate="collapsed" desc=" Generated Code ">//GEN-BEGIN:initComponents
278     private void initComponents() {
279         panel = new javax.swing.JPanel();
280         ejbOutLabel = new javax.swing.JLabel();
281         webOutLabel = new javax.swing.JLabel();
282         jspOutLabel = new javax.swing.JLabel();
283         testNameLabel = new javax.swing.JLabel();
284         configOutLabel = new javax.swing.JLabel();
285         ejbOutText = new javax.swing.JTextField();
286         webOutText = new javax.swing.JTextField();
287         jspOutText = new javax.swing.JTextField();
288         testOutText = new javax.swing.JTextField();
289         configText = new javax.swing.JTextField();
290         serviceOutLabel = new javax.swing.JLabel();
291         serviceOutText = new javax.swing.JTextField();
292         hibernateOutLabel = new javax.swing.JLabel();
293         hibernateOutText = new javax.swing.JTextField();
294         mockOutLabel = new javax.swing.JLabel();
295         mockOutText = new javax.swing.JTextField();
296         swingOutLabel = new javax.swing.JLabel();
297         swingOutText = new javax.swing.JTextField();
298 
299         panel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());
300 
301         ejbOutLabel.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
302         ejbOutLabel.setText("EJB dir:");
303         panel.add(ejbOutLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 20, 100, -1));
304 
305         webOutLabel.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
306         webOutLabel.setText("Web dir:");
307         panel.add(webOutLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 110, 100, -1));
308 
309         jspOutLabel.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
310         jspOutLabel.setText("JSP dir:");
311         panel.add(jspOutLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 140, 100, -1));
312 
313         testNameLabel.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
314         testNameLabel.setText("Test dir:");
315         panel.add(testNameLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 170, 100, -1));
316 
317         configOutLabel.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
318         configOutLabel.setText("Config dir:");
319         panel.add(configOutLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 200, 100, -1));
320 
321         ejbOutText.setText("./src/java-ejb/");
322         ejbOutText.setToolTipText("Target directory for ejb sources");
323         ejbOutText.addFocusListener(new java.awt.event.FocusAdapter() {
324             public void focusLost(java.awt.event.FocusEvent evt) {
325                 ejbOutTextFocusLost(evt);
326             }
327         });
328 
329         panel.add(ejbOutText, new org.netbeans.lib.awtextra.AbsoluteConstraints(120, 20, 260, -1));
330 
331         webOutText.setText("./src/java-web/");
332         webOutText.setToolTipText("Target directory for web based source");
333         webOutText.addFocusListener(new java.awt.event.FocusAdapter() {
334             public void focusLost(java.awt.event.FocusEvent evt) {
335                 webOutTextFocusLost(evt);
336             }
337         });
338 
339         panel.add(webOutText, new org.netbeans.lib.awtextra.AbsoluteConstraints(120, 110, 260, -1));
340 
341         jspOutText.setText("./src/web/");
342         jspOutText.setToolTipText("Target directory for JSPs, HTML, images etc.");
343         jspOutText.addFocusListener(new java.awt.event.FocusAdapter() {
344             public void focusLost(java.awt.event.FocusEvent evt) {
345                 jspOutTextFocusLost(evt);
346             }
347         });
348 
349         panel.add(jspOutText, new org.netbeans.lib.awtextra.AbsoluteConstraints(120, 140, 260, -1));
350 
351         testOutText.setText("./src/java-test/");
352         testOutText.setToolTipText("Target directory for JUnit tests");
353         testOutText.addFocusListener(new java.awt.event.FocusAdapter() {
354             public void focusLost(java.awt.event.FocusEvent evt) {
355                 testOutTextFocusLost(evt);
356             }
357         });
358 
359         panel.add(testOutText, new org.netbeans.lib.awtextra.AbsoluteConstraints(120, 170, 260, -1));
360 
361         configText.setText("./conf/");
362         configText.setToolTipText("Target directory for configuration files");
363         configText.addFocusListener(new java.awt.event.FocusAdapter() {
364             public void focusLost(java.awt.event.FocusEvent evt) {
365                 configTextFocusLost(evt);
366             }
367         });
368 
369         panel.add(configText, new org.netbeans.lib.awtextra.AbsoluteConstraints(120, 200, 260, -1));
370 
371         serviceOutLabel.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
372         serviceOutLabel.setText("Service dir:");
373         panel.add(serviceOutLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 80, 100, -1));
374 
375         serviceOutText.setText("./src/java-service/");
376         serviceOutText.setToolTipText("Target directory for service interfaces and related sources");
377         serviceOutText.addActionListener(new java.awt.event.ActionListener() {
378             public void actionPerformed(java.awt.event.ActionEvent evt) {
379                 serviceOutTextActionPerformed(evt);
380             }
381         });
382 
383         panel.add(serviceOutText, new org.netbeans.lib.awtextra.AbsoluteConstraints(120, 80, 260, -1));
384 
385         hibernateOutLabel.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
386         hibernateOutLabel.setText("Hibernate dir:");
387         panel.add(hibernateOutLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 50, 100, -1));
388 
389         hibernateOutText.setText("./src/java-hibernate/");
390         hibernateOutText.setToolTipText("Target directory for hibernate sources");
391         hibernateOutText.addActionListener(new java.awt.event.ActionListener() {
392             public void actionPerformed(java.awt.event.ActionEvent evt) {
393                 hibernateOutTextActionPerformed(evt);
394             }
395         });
396 
397         panel.add(hibernateOutText, new org.netbeans.lib.awtextra.AbsoluteConstraints(120, 50, 260, -1));
398 
399         /*
400         mockOutLabel.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
401         mockOutLabel.setText("Mock dir:");
402         panel.add(mockOutLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 260, 100, -1));
403 
404         mockOutText.setText("./src/java-mock/");
405         mockOutText.setToolTipText("Target directory for mock implementation sources");
406         panel.add(mockOutText, new org.netbeans.lib.awtextra.AbsoluteConstraints(120, 260, 260, -1));
407         */
408 
409         swingOutLabel.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
410         swingOutLabel.setText("Swing dir:");
411         panel.add(swingOutLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 230, 100, -1));
412 
413         swingOutText.setText("./src/java-swing/");
414         swingOutText.setToolTipText("Target directory for java swing client sources");
415         panel.add(swingOutText, new org.netbeans.lib.awtextra.AbsoluteConstraints(120, 230, 260, -1));
416 
417     }
418     // </editor-fold>//GEN-END:initComponents
419 
420     private void hibernateOutTextActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_hibernateOutTextActionPerformed
421         // TODO add your handling code here:
422     }//GEN-LAST:event_hibernateOutTextActionPerformed
423 
424     private void serviceOutTextActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_serviceOutTextActionPerformed
425         // TODO add your handling code here:
426     }//GEN-LAST:event_serviceOutTextActionPerformed
427 
428     private void configTextFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_configTextFocusLost
429        JagGenerator.stateChanged(false);
430     }//GEN-LAST:event_configTextFocusLost
431 
432     private void testOutTextFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_testOutTextFocusLost
433        JagGenerator.stateChanged(false);
434     }//GEN-LAST:event_testOutTextFocusLost
435 
436     private void jspOutTextFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_jspOutTextFocusLost
437        JagGenerator.stateChanged(false);
438     }//GEN-LAST:event_jspOutTextFocusLost
439 
440     private void webOutTextFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_webOutTextFocusLost
441        JagGenerator.stateChanged(false);
442     }//GEN-LAST:event_webOutTextFocusLost
443 
444     private void ejbOutTextFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_ejbOutTextFocusLost
445        JagGenerator.stateChanged(false);
446     }//GEN-LAST:event_ejbOutTextFocusLost
447 
448     // Variables declaration - do not modify//GEN-BEGIN:variables
449     private javax.swing.JLabel configOutLabel;
450     private javax.swing.JTextField configText;
451     private javax.swing.JLabel ejbOutLabel;
452     private javax.swing.JTextField ejbOutText;
453     private javax.swing.JLabel hibernateOutLabel;
454     public javax.swing.JTextField hibernateOutText;
455     private javax.swing.JLabel jspOutLabel;
456     private javax.swing.JTextField jspOutText;
457     private javax.swing.JLabel mockOutLabel;
458     public javax.swing.JTextField mockOutText;
459     private javax.swing.JPanel panel;
460     private javax.swing.JLabel serviceOutLabel;
461     private javax.swing.JTextField serviceOutText;
462     private javax.swing.JLabel swingOutLabel;
463     private javax.swing.JTextField swingOutText;
464     private javax.swing.JLabel testNameLabel;
465     private javax.swing.JTextField testOutText;
466     private javax.swing.JLabel webOutLabel;
467     private javax.swing.JTextField webOutText;
468     // End of variables declaration//GEN-END:variables
469 }
470