KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > openccm > descriptor > componentassembly > ccm > deployer > binder > ProvidesportDeployerContext


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.componentassembly.ccm.deployer.binder;
27
28 import org.objectweb.openccm.descriptor.componentassembly.Providesport;
29 import org.objectweb.openccm.descriptor.componentassembly.beans.ProvidesportBean;
30 import org.objectweb.openccm.descriptor.componentassembly.ccm.deployer.base.ChildDeployerContext;
31 import org.objectweb.openccm.descriptor.componentassembly.ccm.deployer.base.InitializationError;
32 import org.objectweb.openccm.descriptor.componentassembly.ccm.deployer.installer.ComponentinstantiationDeployer;
33 import org.objectweb.openccm.descriptor.componentassembly.ccm.deployer.util.FindbyDeployer;
34
35 /**
36  * The provides deployer context defines all the connection requires for
37  * find the provided interface.
38  *
39  * @author <a HREF="mailto:briclet@lifl.fr">Briclet Frédéric</a>
40  *
41  * @version 0.1
42  */

43 public class ProvidesportDeployerContext extends ChildDeployerContext {
44     // ==================================================================
45
//
46
// Internal state.
47
//
48
// ==================================================================
49
private ProvidesportBean providesport;
50     private FindbyDeployer findbyDeployer;
51     private ComponentinstantiationDeployer componentinstantiationDeployer;
52     // ==================================================================
53
//
54
// Constructors.
55
//
56
// ==================================================================
57
// ==================================================================
58
//
59
// Internal methods.
60
//
61
// ==================================================================
62
// ==================================================================
63
//
64
// Public accessors methods.
65
//
66
// ==================================================================
67

68     /**
69      * @return
70      */

71     public FindbyDeployer
72     getFindbyDeployer()
73     {
74         return findbyDeployer;
75     }
76
77     /**
78      * @return
79      */

80     public Providesport
81     getProvidesport()
82     {
83         return providesport;
84     }
85
86     /**
87      * @param deployer
88      */

89     public void
90     connectFindbyDeployer(FindbyDeployer deployer)
91     {
92         findbyDeployer = deployer;
93     }
94
95     /**
96      * @param providesport
97      */

98     public void
99     connectProvidesport(ProvidesportBean providesport)
100     {
101         this.providesport = providesport;
102         connectDeployerDescription(providesport);
103     }
104     /**
105      * @return
106      */

107     public ComponentinstantiationDeployer getComponentinstantiationDeployer() {
108         return componentinstantiationDeployer;
109     }
110
111     /**
112      * @param deployer
113      */

114     public void connectComponentinstantiationDeployer(ComponentinstantiationDeployer deployer) {
115         componentinstantiationDeployer = deployer;
116     }
117     /**
118      * This initialization method is used to check that all the services and
119      * information required to deploy are presents. If all is OK the deployer
120      * is put in inactive deployer state waiting for the deployment processing.
121      *
122      * @exception InitializationError is thrown if a problem is detected
123      */

124     public void
125     initialize()
126     throws InitializationError
127     {
128          if(getProvidesport()==null)
129            getErrorManager()
130            .submitException( new InitializationError(this,"Connection on providesport bean is required"+
131                                            "check the handler code it must specify this connection"));
132                                       
133          if(getProvidesport().getComponentinstantiationref()!=null&&(
134              getProvidesport().getComponentinstantiationref().getIdref()==null ||
135              getProvidesport().getComponentinstantiationref().getIdref().length()==0))
136                 getErrorManager()
137                 .submitException( new InitializationError(this,"The idref attribute of the componentinstantiationref element"+
138                                             "must be fullfilled, check theprovidesport element"+
139                                             "description\n."+getStringifiedDeployerDescription()));
140          if(getProvidesport().getComponentinstantiationref()==null&&getFindbyDeployer()==null)
141                 getErrorManager()
142                   .submitException(new InitializationError(this,"One of componentinstantiationref/findby children must be"+
143                                             "specified check the providesport element"+
144                                             "description\n."+getStringifiedDeployerDescription()));
145         getLifeCycleManager().stepEndedSuccessFully();
146      }
147
148
149 }
150
Popular Tags