KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > openccm > descriptor > softpkg > ccm > ImplementationDeployerHandler


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): Briclet Frédéric.
23 Contributor(s): ______________________________________.
24
25 ====================================================================*/

26 package org.objectweb.openccm.descriptor.softpkg.ccm;
27
28 import org.objectweb.openccm.descriptor.componentassembly.ccm.deployer.base.HandlerBase;
29 import org.objectweb.openccm.descriptor.componentassembly.ccm.deployer.base.InitializationError;
30 import org.objectweb.openccm.descriptor.softpkg.beans.ImplementationBeanImpl;
31
32 /**
33  * This handler is used to produce implementationdeployer from an
34  * implementation bean.
35  *
36  * @author <a HREF="mailto:briclet@lifl.fr">Briclet Frédéric</a>
37  *
38  * @version 0.1
39  */

40 public class ImplementationDeployerHandler
41        extends HandlerBase
42 {
43     // ==================================================================
44
//
45
// Internal state.
46
//
47
// ==================================================================
48
private ImplementationDeployer _deploy;
49     // ==================================================================
50
//
51
// Constructors.
52
//
53
// ==================================================================
54
// ==================================================================
55
//
56
// Internal methods.
57
//
58
// ==================================================================
59
// ==================================================================
60
//
61
// Public methods.
62
//
63
// ==================================================================
64
/**
65      * Produce the implementation deployer binded
66      * to the given @param cons.
67      *
68      * @param cons The implementation bean
69      * @return the deployer produced in initialize state
70      * @throws InitializationError thrown if a problem is detected
71      */

72     public Object JavaDoc
73     getInstance(ImplementationBeanImpl cons)
74     throws InitializationError
75     {
76         if (_deploy == null) {
77             _deploy = new ImplementationDeployer();
78             _deploy.connectImplementation(cons);
79             applyCommonConfig(_deploy);
80     
81             if (cons.getDescriptorList() == null
82                 || cons.getDescriptorList().size() == 0)
83                 _deploy.connectDescriptorDeployer(new DefaultDescriptorDeployer());
84             else
85                 for (java.util.Iterator JavaDoc i = cons.getDescriptorList().iterator();
86                     i.hasNext();
87                     )
88                     _deploy.connectDescriptorDeployer(
89                         (DescriptorDeployer) getDeployer(i.next()));
90     
91             if (cons.getCodeList() != null)
92                 for (java.util.Iterator JavaDoc i = cons.getCodeList().iterator();
93                     i.hasNext();
94                     ) {
95                     CodeDeployer cd = (CodeDeployer) getDeployer(i.next());
96                     _deploy.connectCodeDeployer(cd);
97                 }
98     
99             if (cons.getDependencyList() != null)
100                 for (java.util.Iterator JavaDoc i = cons.getDependencyList().iterator();
101                     i.hasNext();
102                     ) {
103                     _deploy.connectDependencyDeployer(
104                         (DependencyDeployer) getDeployer(i.next()));
105                 }
106     
107             _deploy.initialize();
108         }
109         return (_deploy);
110     }
111
112 }
113
Popular Tags