KickJava   Java API By Example, From Geeks To Geeks.

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


1 /*====================================================================
2
3 OpenCCM: The Open CORBA Component Model Platform
4 Copyright (C) 2000-2003 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 /** The consoles's imports */
29 import org.objectweb.openccm.explorer.CORBA.TypageCORBA;
30 import org.objectweb.util.explorer.api.Context;
31 import org.objectweb.util.explorer.api.Entry;
32 import org.objectweb.util.explorer.core.naming.lib.DefaultEntry;
33 import org.omg.Components.PublisherDescription;
34 import org.omg.Components.SubscriberDescription;
35
36 /**
37  * This context displays the available connections of the given publisher.
38  *
39  * @author <a HREF="mailto:Jerome.Moroy@lifl.fr">Jerome Moroy</a>
40  *
41  * @version 0.1
42  */

43 public class PublisherContext
44     implements Context {
45
46     // ==================================================================
47
//
48
// Internal states.
49
//
50
// ==================================================================
51

52     // ==================================================================
53
//
54
// No constructor.
55
//
56
// ==================================================================
57

58     // ==================================================================
59
//
60
// Internal methods.
61
//
62
// ==================================================================
63

64     protected String JavaDoc getName(org.omg.CORBA.Object JavaDoc o) {
65         TypageCORBA tc = new TypageCORBA(o, org.objectweb.openccm.corba.TheORB.getORB());
66         return tc.getTypeID();
67     }
68
69     // ==================================================================
70
//
71
// Public methods for interface Context.
72
//
73
// ==================================================================
74

75     /* (non-Javadoc)
76      * @see org.objectweb.util.explorer.api.Context#getEntries(java.lang.Object)
77      */

78     public Entry[] getEntries(Object JavaDoc object) {
79         PublisherContainer publisher = (PublisherContainer)object;
80         PublisherDescription publisherDesc = (PublisherDescription) publisher.getPublisher();
81         SubscriberDescription[] sd = publisherDesc.consumers;
82         Entry[] values = new Entry[sd.length];
83         for (int i = 0; i < sd.length; i++) {
84             SubscriberContainer sc = new SubscriberContainer();
85             sc.setSubscriber_(sd[i]);
86             sc.setPublisherContainer_(publisher);
87             values[i] = new DefaultEntry("Connection (" + i + ")", sc);
88         }
89         return values;
90     }
91
92 }
93
Popular Tags