KickJava   Java API By Example, From Geeks To Geeks.

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


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.corbacomponent.ccm.CorbacomponentDeployer;
31 import org.objectweb.openccm.descriptor.softpkg.beans.DescriptorBeanImpl;
32
33 /**
34  * This handler is used to produce descriptor deployer from an
35  * descriptor bean.
36  *
37  * @author <a HREF="mailto:briclet@lifl.fr">Briclet Frédéric</a>
38  *
39  * @version 0.1
40  */

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

73     public Object JavaDoc
74     getInstance(DescriptorBeanImpl comp)
75     throws InitializationError
76     {
77         if (_deploy == null) {
78             _deploy = new DescriptorDeployer();
79             _deploy.connectDescriptor(comp);
80             applyCommonConfig(_deploy);
81
82             if (comp.getFileinarchive() != null)
83                 _deploy.connectFileinarchiveDeployer(
84                     (FileinarchiveDeployer) getDeployer(comp
85                         .getFileinarchive()));
86             try {
87                 _deploy.initialize();
88                 if (_deploy.getCorbacomponent() != null)
89                     _deploy.connectCorbaComponentDeployer(
90                         (CorbacomponentDeployer) getDeployer(_deploy
91                             .getCorbacomponent()));
92             } catch (CorbaComponentFileLoadingFailureException e) {
93                 _deploy.getErrorManager().submitException(e);
94             }
95
96         }
97         return (_deploy);
98     }
99 }
100
Popular Tags