]> git.proxmox.com Git - mirror_edk2.git/blame - Tools/Source/FrameworkWizard/src/org/tianocore/frameworkwizard/SelectModuleBelong.java
1. Fix displaying wrong file type bug.
[mirror_edk2.git] / Tools / Source / FrameworkWizard / src / org / tianocore / frameworkwizard / SelectModuleBelong.java
CommitLineData
a13899c5 1/** @file\r
2 \r
3 The file is used to let user choose to create module in an existing package\r
4 or to create a new package first.\r
5 \r
6 Copyright (c) 2006, Intel Corporation\r
7 All rights reserved. This program and the accompanying materials\r
8 are licensed and made available under the terms and conditions of the BSD License\r
9 which accompanies this distribution. The full text of the license may be found at\r
10 http://opensource.org/licenses/bsd-license.php\r
11 \r
12 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
13 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
14 \r
15 **/\r
16package org.tianocore.frameworkwizard;\r
17\r
18import java.awt.event.ActionEvent;\r
19import java.io.File;\r
20import java.util.Vector;\r
21\r
22import javax.swing.JButton;\r
23import javax.swing.JComboBox;\r
24import javax.swing.JFileChooser;\r
25import javax.swing.JLabel;\r
26import javax.swing.JPanel;\r
27import javax.swing.JTextField;\r
28\r
29import org.tianocore.ModuleSurfaceAreaDocument;\r
30import org.tianocore.MsaHeaderDocument;\r
31import org.tianocore.SpdHeaderDocument;\r
32import org.tianocore.PackageSurfaceAreaDocument.PackageSurfaceArea;\r
33import org.tianocore.PlatformHeaderDocument.PlatformHeader;\r
34import org.tianocore.PlatformSurfaceAreaDocument.PlatformSurfaceArea;\r
35import org.tianocore.frameworkwizard.common.DataType;\r
36import org.tianocore.frameworkwizard.common.DataValidation;\r
37import org.tianocore.frameworkwizard.common.IFileFilter;\r
38import org.tianocore.frameworkwizard.common.Log;\r
39import org.tianocore.frameworkwizard.common.SaveFile;\r
40import org.tianocore.frameworkwizard.common.Tools;\r
41import org.tianocore.frameworkwizard.common.ui.IDialog;\r
42import org.tianocore.frameworkwizard.common.ui.IFrame;\r
43import org.tianocore.frameworkwizard.common.ui.StarLabel;\r
79cb6fdb 44import org.tianocore.frameworkwizard.module.Identifications.ModuleIdentification;\r
a13899c5 45import org.tianocore.frameworkwizard.packaging.PackageIdentification;\r
46import org.tianocore.frameworkwizard.platform.PlatformIdentification;\r
47import org.tianocore.frameworkwizard.workspace.Workspace;\r
48import org.tianocore.frameworkwizard.workspace.WorkspaceTools;\r
49\r
50public class SelectModuleBelong extends IDialog {\r
51\r
52 /**\r
53 Define class members\r
54 \r
55 **/\r
56 private static final long serialVersionUID = 4171355136991448972L;\r
57\r
58 private JPanel jContentPane = null;\r
59\r
60 private JComboBox jComboBoxExistingPackage = null;\r
61\r
62 private JButton jButtonOk = null;\r
63\r
64 private JButton jButtonCancel = null;\r
65\r
66 private Vector<PackageIdentification> packages = null;\r
67\r
68 private JLabel jLabelPackage = null;\r
69\r
70 private JLabel jLabelFilePath = null;\r
71\r
72 private JTextField jTextFieldFilePath = null;\r
73\r
74 private JButton jButtonBrowse = null;\r
75\r
76 private JLabel jLabelName = null;\r
77\r
78 private JTextField jTextFieldName = null;\r
79\r
80 private JLabel jLabelGuid = null;\r
81\r
82 private JTextField jTextFieldGuid = null;\r
83\r
84 private JButton jButtonGen = null;\r
85\r
86 private JLabel jLabelVersion = null;\r
87\r
88 private JTextField jTextFieldVersion = null;\r
89\r
90 private StarLabel jStarLabel1 = null;\r
91\r
92 private StarLabel jStarLabel2 = null;\r
93\r
94 private StarLabel jStarLabel3 = null;\r
95\r
96 private StarLabel jStarLabel4 = null;\r
97\r
98 private StarLabel jStarLabel5 = null;\r
99\r
100 private WorkspaceTools wt = new WorkspaceTools();\r
101\r
102 private ModuleIdentification mid = null;\r
103\r
104 private PackageIdentification pid = null;\r
105\r
106 private PlatformIdentification fid = null;\r
107\r
108 private int mode = -1;\r
109\r
110 /**\r
111 * This method initializes jComboBoxExistingPackage \r
112 * \r
113 * @return javax.swing.JComboBox \r
114 */\r
115 private JComboBox getJComboBoxExistingPackage() {\r
116 if (jComboBoxExistingPackage == null) {\r
117 jComboBoxExistingPackage = new JComboBox();\r
118 jComboBoxExistingPackage.setBounds(new java.awt.Rectangle(140, 10, 340, 20));\r
119 }\r
120 return jComboBoxExistingPackage;\r
121 }\r
122\r
123 /**\r
124 * This method initializes jButtonNext \r
125 * \r
126 * @return javax.swing.JButton \r
127 */\r
128 private JButton getJButtonOk() {\r
129 if (jButtonOk == null) {\r
130 jButtonOk = new JButton();\r
131 jButtonOk.setBounds(new java.awt.Rectangle(310, 140, 80, 20));\r
132 jButtonOk.setText("Ok");\r
133 jButtonOk.addActionListener(this);\r
134 }\r
135 return jButtonOk;\r
136 }\r
137\r
138 /**\r
139 * This method initializes jButtonCancel \r
140 * \r
141 * @return javax.swing.JButton \r
142 */\r
143 private JButton getJButtonCancel() {\r
144 if (jButtonCancel == null) {\r
145 jButtonCancel = new JButton();\r
146 jButtonCancel.setBounds(new java.awt.Rectangle(395, 140, 80, 20));\r
147 jButtonCancel.setText("Cancel");\r
148 jButtonCancel.addActionListener(this);\r
149 }\r
150 return jButtonCancel;\r
151 }\r
152\r
153 /**\r
154 * This method initializes jTextFieldFilePath \r
155 * \r
156 * @return javax.swing.JTextField \r
157 */\r
158 private JTextField getJTextFieldFilePath() {\r
159 if (jTextFieldFilePath == null) {\r
160 jTextFieldFilePath = new JTextField();\r
161 jTextFieldFilePath.setBounds(new java.awt.Rectangle(140, 35, 250, 20));\r
162 }\r
163 return jTextFieldFilePath;\r
164 }\r
165\r
166 /**\r
167 * This method initializes jButtonBrowse \r
168 * \r
169 * @return javax.swing.JButton \r
170 */\r
171 private JButton getJButtonBrowse() {\r
172 if (jButtonBrowse == null) {\r
173 jButtonBrowse = new JButton();\r
174 jButtonBrowse.setBounds(new java.awt.Rectangle(395, 35, 85, 20));\r
175 jButtonBrowse.setText("Browse");\r
176 jButtonBrowse.addActionListener(this);\r
177 }\r
178 return jButtonBrowse;\r
179 }\r
180\r
181 /**\r
182 * This method initializes jTextFieldModuleName \r
183 * \r
184 * @return javax.swing.JTextField \r
185 */\r
186 private JTextField getJTextFieldName() {\r
187 if (jTextFieldName == null) {\r
188 jTextFieldName = new JTextField();\r
189 jTextFieldName.setBounds(new java.awt.Rectangle(140, 60, 340, 20));\r
190 }\r
191 return jTextFieldName;\r
192 }\r
193\r
194 /**\r
195 * This method initializes jTextFieldGuid \r
196 * \r
197 * @return javax.swing.JTextField \r
198 */\r
199 private JTextField getJTextFieldGuid() {\r
200 if (jTextFieldGuid == null) {\r
201 jTextFieldGuid = new JTextField();\r
202 jTextFieldGuid.setBounds(new java.awt.Rectangle(140, 85, 250, 20));\r
203 }\r
204 return jTextFieldGuid;\r
205 }\r
206\r
207 /**\r
208 * This method initializes jButtonGen \r
209 * \r
210 * @return javax.swing.JButton \r
211 */\r
212 private JButton getJButtonGen() {\r
213 if (jButtonGen == null) {\r
214 jButtonGen = new JButton();\r
215 jButtonGen.setBounds(new java.awt.Rectangle(395, 85, 85, 20));\r
216 jButtonGen.setText("GEN");\r
217 jButtonGen.addActionListener(this);\r
218 }\r
219 return jButtonGen;\r
220 }\r
221\r
222 /**\r
223 * This method initializes jTextFieldVersion \r
224 * \r
225 * @return javax.swing.JTextField \r
226 */\r
227 private JTextField getJTextFieldVersion() {\r
228 if (jTextFieldVersion == null) {\r
229 jTextFieldVersion = new JTextField();\r
230 jTextFieldVersion.setBounds(new java.awt.Rectangle(140, 110, 340, 20));\r
231 }\r
232 return jTextFieldVersion;\r
233 }\r
234\r
235 /**\r
236 * @param args\r
237 */\r
238 public static void main(String[] args) {\r
239 SelectModuleBelong smb = new SelectModuleBelong();\r
240 smb.setVisible(true);\r
241 }\r
242\r
243 /**\r
244 * This is the default constructor\r
245 */\r
246 public SelectModuleBelong() {\r
247 super();\r
248 init();\r
249 }\r
250\r
251 /**\r
252 * This is the default constructor\r
253 */\r
254 public SelectModuleBelong(IFrame parentFrame, boolean modal, int fileType) {\r
255 super(parentFrame, modal);\r
256 this.mode = fileType;\r
257 init();\r
258 initExistingPackage();\r
259 if (mode != DataType.RETURN_TYPE_MODULE_SURFACE_AREA) {\r
260 this.jStarLabel1.setVisible(false);\r
261 this.jLabelPackage.setVisible(false);\r
262 this.jComboBoxExistingPackage.setVisible(false);\r
263 }\r
264 }\r
265\r
266 /**\r
267 * This method initializes this\r
268 * \r
269 * @return void\r
270 */\r
271 private void init() {\r
272 this.setSize(500, 200);\r
273 this.setContentPane(getJContentPane());\r
8f4f211c 274 this.setTitle("New");\r
a13899c5 275 this.centerWindow();\r
276 }\r
277\r
278 /**\r
279 * This method initializes jContentPane\r
280 * \r
281 * @return javax.swing.JPanel\r
282 */\r
283 private JPanel getJContentPane() {\r
284 if (jContentPane == null) {\r
285 jLabelVersion = new JLabel();\r
286 jLabelVersion.setBounds(new java.awt.Rectangle(15, 110, 120, 20));\r
287 jLabelVersion.setText("Version");\r
288 jLabelGuid = new JLabel();\r
289 jLabelGuid.setBounds(new java.awt.Rectangle(15, 85, 120, 20));\r
290 jLabelGuid.setText("Guid");\r
291 jLabelName = new JLabel();\r
292 jLabelName.setBounds(new java.awt.Rectangle(15, 60, 120, 20));\r
293 jLabelName.setText("Name");\r
294 jLabelFilePath = new JLabel();\r
295 jLabelFilePath.setBounds(new java.awt.Rectangle(15, 35, 120, 20));\r
296 jLabelFilePath.setText("File Path");\r
297 jLabelPackage = new JLabel();\r
298 jLabelPackage.setBounds(new java.awt.Rectangle(15, 10, 120, 20));\r
299 jLabelPackage.setText("Choose Package");\r
300 jContentPane = new JPanel();\r
301 jContentPane.setLayout(null);\r
302 jContentPane.setSize(new java.awt.Dimension(490, 175));\r
303 jContentPane.add(getJComboBoxExistingPackage(), null);\r
304 jContentPane.add(getJButtonOk(), null);\r
305 jContentPane.add(getJButtonCancel(), null);\r
306 jContentPane.add(jLabelPackage, null);\r
307 jContentPane.add(jLabelFilePath, null);\r
308 jContentPane.add(getJTextFieldFilePath(), null);\r
309 jContentPane.add(getJButtonBrowse(), null);\r
310 jContentPane.add(jLabelName, null);\r
311 jContentPane.add(getJTextFieldName(), null);\r
312 jContentPane.add(jLabelGuid, null);\r
313 jContentPane.add(getJTextFieldGuid(), null);\r
314 jContentPane.add(getJButtonGen(), null);\r
315 jContentPane.add(jLabelVersion, null);\r
316 jContentPane.add(getJTextFieldVersion(), null);\r
317\r
318 jStarLabel1 = new StarLabel();\r
319 jStarLabel1.setLocation(new java.awt.Point(0, 10));\r
320 jStarLabel2 = new StarLabel();\r
321 jStarLabel2.setLocation(new java.awt.Point(0, 35));\r
322 jStarLabel3 = new StarLabel();\r
323 jStarLabel3.setLocation(new java.awt.Point(0, 60));\r
324 jStarLabel4 = new StarLabel();\r
325 jStarLabel4.setLocation(new java.awt.Point(0, 85));\r
326 jStarLabel5 = new StarLabel();\r
327 jStarLabel5.setLocation(new java.awt.Point(0, 110));\r
328 jContentPane.add(jStarLabel1, null);\r
329 jContentPane.add(jStarLabel2, null);\r
330 jContentPane.add(jStarLabel3, null);\r
331 jContentPane.add(jStarLabel4, null);\r
332 jContentPane.add(jStarLabel5, null);\r
333 }\r
334 return jContentPane;\r
335 }\r
336\r
337 /**\r
338 Query all existing packages and fill them into combox\r
339 \r
340 **/\r
341 private void initExistingPackage() {\r
342 packages = wt.getAllPackages();\r
343 for (int index = 0; index < packages.size(); index++) {\r
344 this.jComboBoxExistingPackage.addItem(packages.elementAt(index).getName());\r
345 }\r
346 }\r
347\r
348 /* (non-Javadoc)\r
349 * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)\r
350 * \r
351 * Override actionPerformed to listen all actions\r
352 */\r
353 public void actionPerformed(ActionEvent arg0) {\r
354 if (arg0.getSource() == jButtonCancel) {\r
355 this.setVisible(false);\r
356 this.returnType = DataType.RETURN_TYPE_CANCEL;\r
357 }\r
358\r
359 if (arg0.getSource() == jButtonOk) {\r
360 if (this.check()) {\r
361 this.save();\r
362 } else {\r
363 return;\r
364 }\r
365 this.setVisible(false);\r
366 this.returnType = DataType.RETURN_TYPE_OK;\r
367 }\r
368\r
369 if (arg0.getSource() == this.jButtonGen) {\r
370 this.jTextFieldGuid.setText(Tools.generateUuidString());\r
371 }\r
372\r
373 if (arg0.getSource() == this.jButtonBrowse) {\r
374 JFileChooser fc = new JFileChooser();\r
375 fc.setAcceptAllFileFilterUsed(false);\r
376\r
377 if (mode == DataType.RETURN_TYPE_MODULE_SURFACE_AREA) {\r
378 fc.setCurrentDirectory(new File(packages.elementAt(this.jComboBoxExistingPackage.getSelectedIndex())\r
379 .getPath()));\r
380 fc.addChoosableFileFilter(new IFileFilter(DataType.MODULE_SURFACE_AREA_EXT));\r
381 }\r
382 if (mode == DataType.RETURN_TYPE_PACKAGE_SURFACE_AREA) {\r
383 fc.setCurrentDirectory(new File(Workspace.getCurrentWorkspace()));\r
384 fc.addChoosableFileFilter(new IFileFilter(DataType.PACKAGE_SURFACE_AREA_EXT));\r
385 }\r
386 if (mode == DataType.RETURN_TYPE_PLATFORM_SURFACE_AREA) {\r
387 fc.setCurrentDirectory(new File(Workspace.getCurrentWorkspace()));\r
388 fc.addChoosableFileFilter(new IFileFilter(DataType.PLATFORM_SURFACE_AREA_EXT));\r
389 }\r
390 int result = fc.showSaveDialog(new JPanel());\r
391 if (result == JFileChooser.APPROVE_OPTION) {\r
392 this.jTextFieldFilePath.setText(Tools.addPathExt(fc.getSelectedFile().getPath(), mode));\r
393 }\r
394 }\r
395 }\r
396\r
397 /**\r
398 Data validation for all fields\r
399 \r
400 @retval true - All datas are valid\r
401 @retval false - At least one data is invalid\r
402 \r
403 **/\r
404 public boolean check() {\r
405 //\r
406 // Check if all required fields are not empty\r
407 //\r
408 if (isEmpty(this.jTextFieldFilePath.getText())) {\r
409 Log.err("File Path couldn't be empty");\r
410 return false;\r
411 }\r
412 if (isEmpty(this.jTextFieldName.getText())) {\r
413 Log.err("Name couldn't be empty");\r
414 return false;\r
415 }\r
416 if (isEmpty(this.jTextFieldGuid.getText())) {\r
417 Log.err("Guid Value couldn't be empty");\r
418 return false;\r
419 }\r
420 if (isEmpty(this.jTextFieldVersion.getText())) {\r
421 Log.err("Version couldn't be empty");\r
422 return false;\r
423 }\r
424\r
425 //\r
426 // Check if all fields have correct data types \r
427 //\r
428 if (!DataValidation.isBaseName(this.jTextFieldName.getText())) {\r
429 Log.err("Incorrect data type for Base Name");\r
430 return false;\r
431 }\r
432 if (!DataValidation.isGuid((this.jTextFieldGuid).getText())) {\r
433 Log.err("Incorrect data type for Guid");\r
434 return false;\r
435 }\r
436\r
437 if (mode == DataType.RETURN_TYPE_MODULE_SURFACE_AREA) {\r
438 //\r
439 // Check if the module is already existed in current package\r
440 //\r
441 String packagePath = packages.elementAt(this.jComboBoxExistingPackage.getSelectedIndex()).getPath();\r
442 String modulePath = Tools.convertPathToCurrentOsType(this.jTextFieldFilePath.getText());\r
443 Vector<String> msaFile = wt.getAllModulesOfPackage(packagePath);\r
a13899c5 444\r
445 for (int index = 0; index < msaFile.size(); index++) {\r
79cb6fdb 446 if (msaFile.elementAt(index).equals(modulePath)) {\r
a13899c5 447 Log.err("This module is already existing in selected package");\r
448 return false;\r
449 }\r
450 }\r
451 }\r
452\r
453 if (mode == DataType.RETURN_TYPE_PACKAGE_SURFACE_AREA) {\r
454 //\r
455 // Check if the package is already existed in database\r
456 //\r
457 String path = Tools.convertPathToCurrentOsType(this.jTextFieldFilePath.getText());\r
458 Vector<PackageIdentification> vPackageList = wt.getAllPackages();\r
459 if (vPackageList != null && vPackageList.size() > 0) {\r
460 for (int index = 0; index < vPackageList.size(); index++) {\r
461 if (vPackageList.get(index).getPath().equals(path)) {\r
462 Log.err("This package is already existing in database");\r
463 return false;\r
464 }\r
465 }\r
466 }\r
467 }\r
468\r
469 if (mode == DataType.RETURN_TYPE_PLATFORM_SURFACE_AREA) {\r
470 //\r
471 // Check if the platform is already existed in database\r
472 //\r
473 String path = Tools.convertPathToCurrentOsType(this.jTextFieldFilePath.getText());\r
474 Vector<PlatformIdentification> vPlatfromList = wt.getAllPlatforms();\r
475 if (vPlatfromList != null && vPlatfromList.size() > 0) {\r
476 for (int index = 0; index < vPlatfromList.size(); index++) {\r
477 if (vPlatfromList.get(index).getPath().equals(path)) {\r
478 Log.err("This platform is already existing in database");\r
479 return false;\r
480 }\r
481 }\r
482 }\r
483 }\r
484\r
485 return true;\r
486 }\r
487\r
488 /**\r
489 Save file\r
490 \r
491 **/\r
492 public void save() {\r
493 if (mode == DataType.RETURN_TYPE_MODULE_SURFACE_AREA) {\r
494 this.saveModule();\r
495 }\r
496 if (mode == DataType.RETURN_TYPE_PACKAGE_SURFACE_AREA) {\r
497 this.savePackage();\r
498 }\r
499 if (mode == DataType.RETURN_TYPE_PLATFORM_SURFACE_AREA) {\r
500 this.savePlatform();\r
501 }\r
502 }\r
503\r
504 /**\r
505 Save all components of Msa Header\r
506 \r
507 **/\r
508 private void saveModule() {\r
509 ModuleSurfaceAreaDocument.ModuleSurfaceArea msa = null;\r
510 String path = Tools.convertPathToCurrentOsType(this.jTextFieldFilePath.getText());\r
511\r
512 //\r
513 // Save to memory\r
514 //\r
515 try {\r
516 MsaHeaderDocument.MsaHeader msaHeader = null;\r
517\r
518 msa = ModuleSurfaceAreaDocument.ModuleSurfaceArea.Factory.newInstance();\r
519 msaHeader = MsaHeaderDocument.MsaHeader.Factory.newInstance();\r
520\r
521 msaHeader.setModuleName(this.jTextFieldName.getText());\r
522 msaHeader.setGuidValue(this.jTextFieldGuid.getText());\r
523 msaHeader.setVersion(this.jTextFieldVersion.getText());\r
524\r
525 msa.setMsaHeader(msaHeader);\r
526 } catch (Exception e) {\r
527 Log.err("Save ModuleSurfaceArea Document", e.getMessage());\r
528 return;\r
529 }\r
530\r
531 //\r
532 // Save to real file\r
533 //\r
534 try {\r
535 SaveFile.saveMsaFile(path, msa);\r
536\r
537 } catch (Exception e) {\r
538 Log.err("Save Module to file system", e.getMessage());\r
539 return;\r
540 }\r
541\r
542 //\r
543 // Save to identification\r
544 //\r
545 mid = new ModuleIdentification(this.jTextFieldName.getText(), this.jTextFieldGuid.getText(),\r
546 this.jTextFieldVersion.getText(), path);\r
547 mid.setPackageId(packages.elementAt(this.jComboBoxExistingPackage.getSelectedIndex()));\r
548 }\r
549\r
550 /**\r
551 Save all components of Spd Header\r
552 \r
553 **/\r
554 private void savePackage() {\r
555 PackageSurfaceArea spd = null;\r
556 String path = Tools.convertPathToCurrentOsType(this.jTextFieldFilePath.getText());\r
557\r
558 //\r
559 // Save to memory\r
560 //\r
561 try {\r
562 SpdHeaderDocument.SpdHeader spdHeader = null;\r
563\r
564 spd = PackageSurfaceArea.Factory.newInstance();\r
565 spdHeader = SpdHeaderDocument.SpdHeader.Factory.newInstance();\r
566\r
567 spdHeader.setPackageName(this.jTextFieldName.getText());\r
568 spdHeader.setGuidValue(this.jTextFieldGuid.getText());\r
569 spdHeader.setVersion(this.jTextFieldVersion.getText());\r
570\r
571 spd.setSpdHeader(spdHeader);\r
572 } catch (Exception e) {\r
573 Log.err("Save PackageSurfaceArea Document", e.getMessage());\r
574 return;\r
575 }\r
576\r
577 //\r
578 // Save to real file\r
579 //\r
580 try {\r
581 SaveFile.saveSpdFile(path, spd);\r
582\r
583 } catch (Exception e) {\r
584 Log.err("Save Package to file system", e.getMessage());\r
585 return;\r
586 }\r
587\r
588 //\r
589 // Save to identification\r
590 //\r
591 pid = new PackageIdentification(this.jTextFieldName.getText(), this.jTextFieldGuid.getText(),\r
592 this.jTextFieldVersion.getText(), path);\r
593 }\r
594\r
595 /**\r
596 Save all components of Fpd Header\r
597 \r
598 **/\r
599 private void savePlatform() {\r
600 PlatformSurfaceArea fpd = null;\r
601 String path = Tools.convertPathToCurrentOsType(this.jTextFieldFilePath.getText());\r
602\r
603 //\r
604 // Save to memory\r
605 //\r
606 try {\r
607 PlatformHeader fpdHeader = null;\r
608\r
609 fpd = PlatformSurfaceArea.Factory.newInstance();\r
610 fpdHeader = PlatformHeader.Factory.newInstance();\r
611\r
612 fpdHeader.setPlatformName(this.jTextFieldName.getText());\r
613 fpdHeader.setGuidValue(this.jTextFieldGuid.getText());\r
614 fpdHeader.setVersion(this.jTextFieldVersion.getText());\r
615\r
616 fpd.setPlatformHeader(fpdHeader);\r
617 } catch (Exception e) {\r
618 Log.err("Save FrameworkPlatformDescription Document", e.getMessage());\r
619 return;\r
620 }\r
621\r
622 //\r
623 // Save to real file\r
624 //\r
625 try {\r
626 SaveFile.saveFpdFile(path, fpd);\r
627\r
628 } catch (Exception e) {\r
629 Log.err("Save Platform to file system", e.getMessage());\r
630 return;\r
631 }\r
632\r
633 //\r
634 // Save to identification\r
635 //\r
636 fid = new PlatformIdentification(this.jTextFieldName.getText(), this.jTextFieldGuid.getText(),\r
637 this.jTextFieldVersion.getText(), path);\r
638 }\r
639\r
640 public ModuleIdentification getMid() {\r
641 return mid;\r
642 }\r
643\r
644 public void setMid(ModuleIdentification mid) {\r
645 this.mid = mid;\r
646 }\r
647\r
648 public PlatformIdentification getFid() {\r
649 return fid;\r
650 }\r
651\r
652 public void setFid(PlatformIdentification fid) {\r
653 this.fid = fid;\r
654 }\r
655\r
656 public PackageIdentification getPid() {\r
657 return pid;\r
658 }\r
659\r
660 public void setPid(PackageIdentification pid) {\r
661 this.pid = pid;\r
662 }\r
663}\r