KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > openccm > descriptor > componentassembly > gui > HomeplacementZipper


1 /*====================================================================
2
3 OpenCCM: The Open CORBA Component Model Platform
4 Copyright (C) 2000-2004 INRIA - USTL - LIFL - GOAL
5 Contact: openccm@objectweb.org
6
7 This library is free software; you can redistribute it and/or
8 modify it under the terms of the GNU Lesser General Public
9 License as published by the Free Software Foundation; either
10 version 2.1 of the License, or any later version.
11
12 This library 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 library; if not, write to the Free Software
19 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
20 USA
21
22 Initial developer(s): Christophe Contreras
23 Contributor(s):
24
25 ====================================================================*/

26
27 package org.objectweb.openccm.descriptor.componentassembly.gui;
28
29 import org.objectweb.openccm.descriptor.componentassembly.beans.*;
30 import org.objectweb.openccm.descriptor.componentassembly.*;
31
32 /**
33  * This is an extension to the Apollon generated framework around componentassembly DTD
34  * it looks for subelements that could contain files to archive
35  * and calls their own zipper extensions to do the same job
36  * any found file name is sent to a zip factory
37  *
38  */

39 public class HomeplacementZipper
40 {
41     // ==================================================================
42
//
43
// Internal state.
44
//
45
// ==================================================================
46

47     // ==================================================================
48
//
49
// Constructors.
50
//
51
// ==================================================================
52

53     /**
54      * The constructor taking an event as parameter
55      */

56     public void
57     zipCall(
58         HomeplacementBean homeplacement
59         , org.objectweb.openccm.packaging.ZipFactory zip_factory
60         )
61     {
62         // coponent properties file
63
ComponentpropertiesBean componentproperties
64          = (ComponentpropertiesBean) homeplacement.getComponentproperties();
65         // goes through sub element and call its zip method
66
if (componentproperties != null)
67         {
68             ComponentpropertiesZipper sub_zipper
69              = (ComponentpropertiesZipper) componentproperties
70                 .getExtensionManager()
71                 .getExtensionByName("gui.Zipper")
72                 .getInstance();
73
74             sub_zipper.zipCall(componentproperties, zip_factory);
75         }
76
77         // home properties file
78
HomepropertiesBean homeproperties
79          = (HomepropertiesBean) homeplacement.getHomeproperties();
80         // goes through sub element and call its zip method
81
if (homeproperties != null)
82         {
83             HomepropertiesZipper sub_zipper
84              = (HomepropertiesZipper) homeproperties
85                 .getExtensionManager()
86                 .getExtensionByName("gui.Zipper")
87                 .getInstance();
88
89             sub_zipper.zipCall(homeproperties, zip_factory);
90         }
91
92         // retrieves the elements that may contain files to zip and call their extension
93
java.util.List JavaDoc subelement_list;
94
95         // component files
96
subelement_list
97          = homeplacement.getComponentinstantiationList();
98         // goes through each elements and call its zip method
99
for (java.util.Iterator JavaDoc i = subelement_list.iterator() ; i.hasNext() ; )
100         {
101             ComponentinstantiationBean sub_element
102              = (ComponentinstantiationBean) i.next();
103
104             ComponentinstantiationZipper sub_zipper
105              = (ComponentinstantiationZipper) sub_element
106                 .getExtensionManager()
107                 .getExtensionByName("gui.Zipper")
108                 .getInstance();
109
110             sub_zipper.zipCall(sub_element, zip_factory);
111         }
112     }
113 }
114
Popular Tags