KickJava   Java API By Example, From Geeks To Geeks.

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


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.ccm.deployer.util.CannotResolveReferenceException;
30 import org.omg.CORBA.Object JavaDoc;
31 import org.omg.Components.InvalidName;
32
33 /**
34  * The providesport deployer is in charge to resolve an interface provided.
35  *
36  * @author <a HREF="mailto:briclet@lifl.fr">Briclet Frédéric</a>
37  *
38  * @version 0.1
39  */

40 public class ProvidesportDeployer
41        extends ProvidesportDeployerContext
42     {
43     // ==================================================================
44
//
45
// Internal state.
46
//
47
// ==================================================================
48
// ==================================================================
49
//
50
// Constructors.
51
//
52
// ==================================================================
53
// ==================================================================
54
//
55
// Internal methods.
56
//
57
// ==================================================================
58
// ==================================================================
59
//
60
// Public methods.
61
//
62
// ==================================================================
63
/**
64      * Return the provided interface describes by the providesport element.
65      * @throws CannotResolveRefernceException is the component cannot be found
66      * @throws InvalidName if the given port name is invalid
67      * @return the provided interface.
68      */

69     public org.omg.CORBA.Object JavaDoc
70     getProvidedPort()
71     throws CannotResolveReferenceException,
72            InvalidName
73     {
74         Providesport ppi = getProvidesport();
75         Object JavaDoc o;
76         if (getComponentinstantiationDeployer() != null) {
77             o =
78                 getComponentinstantiationDeployer().getComponent().provide_facet(
79                     ppi.getProvidesidentifier().getValue());
80         } else {
81             o =
82                 org
83                     .omg
84                     .Components
85                     .CCMObjectHelper
86                     .narrow(getFindbyDeployer().resolveReference())
87                     .provide_facet(ppi.getProvidesidentifier().getValue());
88         }
89         getLifeCycleManager().stepEndedSuccessFully();
90         return o;
91     }
92 }
93
Popular Tags