KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > openccm > explorer > Components > ConnectConsumerOnDropAction


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): Jerome Moroy.
23 Contributor(s): ______________________________________.
24
25 ====================================================================*/

26 package org.objectweb.openccm.explorer.Components;
27
28 import org.objectweb.util.explorer.api.DropAction;
29 import org.objectweb.util.explorer.api.DropTreeView;
30 import org.omg.Components.EmitterDescription;
31 import org.omg.Components.CCMObject;
32 import org.omg.Components.ConsumerDescription;
33
34 /**
35  * This action allows a component to connect to an emitter using the
36  * Drag&Drop mechanism
37  * (<code>::Components::CCMObject::connect_consumer</code> called).
38  *
39  * @author <a HREF="mailto:Jerome.Moroy@lifl.fr">Jerome Moroy</a>
40  * @author <a HREF="mailto:Sylvain.Leblanc@lifl.fr">Sylvain Leblanc</a>
41  *
42  * @version 0.1
43  */

44 public class ConnectConsumerOnDropAction
45     implements DropAction
46 {
47
48     //==================================================================
49
//
50
// No internal state.
51
//
52
//==================================================================
53

54     //==================================================================
55
//
56
// No constructor.
57
//
58
//==================================================================
59

60     //==================================================================
61
//
62
// No internal method.
63
//
64
//==================================================================
65

66     //==================================================================
67
//
68
// Public methods for DropAction interface.
69
//
70
//==================================================================
71

72     /* (non-Javadoc)
73      * @see org.objectweb.util.explorer.api.DropAction#execute(org.objectweb.util.explorer.api.DropTreeView)
74      */

75     public void execute(DropTreeView dropTreeView)
76          throws Exception JavaDoc
77     {
78         if(dropTreeView!=null){
79             ConsumerDescription consumer = (ConsumerDescription) dropTreeView.getDragSourceObject();
80             EmitterContainer ec = (EmitterContainer) dropTreeView.getSelectedObject();
81             EmitterDescription emitter = ec.getEmitter();
82             CCMObject component = ec.getComponent();
83             if (component != null && emitter != null && consumer != null) {
84                 component.connect_consumer(emitter.name, consumer.consumer);
85             }
86         }
87     }
88
89 }
90
Popular Tags