KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > openccm > explorer > DCI > DestroyAssembly


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.DCI;
27
28 import org.omg.Components.Cookie;
29 import org.omg.Components.Deployment.AssemblyFactory;
30 import org.objectweb.openccm.OpenCCM_DCI.AssemblyFactoryManager;
31 import org.objectweb.util.explorer.api.MenuItem;
32 import org.objectweb.util.explorer.api.MenuItemTreeView;
33 import org.objectweb.util.explorer.api.TreeView;
34
35 import javax.swing.JOptionPane JavaDoc;
36
37 /**
38  * The <code>destroy</code> action destoyes an Assembly.
39  * (section 6.9.3 of the CORBA Components Model specification)
40  *
41  * @author <a HREF="mailto:Jerome.Moroy@lifl.fr">Jerome Moroy</a>
42  *
43  * @version 0.1
44  */

45 public class DestroyAssembly
46   implements MenuItem
47 {
48
49     //==================================================================
50
//
51
// No internal states.
52
//
53
//==================================================================
54

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

61     //==================================================================
62
//
63
// No method.
64
//
65
//==================================================================
66

67     //==================================================================
68
//
69
// Public methods for MenuItem interface.
70
//
71
//==================================================================
72

73     /* (non-Javadoc)
74      * @see org.objectweb.util.explorer.api.MenuItem#getStatus(org.objectweb.util.explorer.api.TreeView)
75      */

76     public int getStatus(TreeView arg0){
77         return MenuItem.ENABLED_STATUS;
78     }
79
80     /* (non-Javadoc)
81      * @see org.objectweb.util.explorer.api.MenuItem#actionPerformed(org.objectweb.util.explorer.api.MenuItemTreeView)
82      */

83     public void actionPerformed(MenuItemTreeView e) throws Exception JavaDoc {
84         if(JOptionPane.showConfirmDialog(null,"Do you really want to destroy this assembly ?", "Destroy action", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE)==0){
85
86             // Obtaining the AssemblyFactory
87
AssemblyFactoryManager assemblyFactoryManager = (AssemblyFactoryManager)e.getParentObject();
88             AssemblyFactory assemblyFactory = assemblyFactoryManager.provide_assembly_factory();
89         
90             // Obtaining the Cookie
91
AssemblyManagerWrapperWithCookie assemblyManagerWrapper = (AssemblyManagerWrapperWithCookie)e.getSelectedObject();
92             Cookie cookie = assemblyManagerWrapper.getCookie();
93         
94             // Removing the assembly
95
assemblyFactory.destroy(cookie);
96         }
97         
98     }
99 }
Popular Tags