KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > util > explorer > property > lib > PropertyFeederDispatcher


1 /*====================================================================
2
3 Objectweb Explorer Framework
4 Copyright (C) 2000-2005 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, Philippe Merle.
23 Contributor(s): ______________________________________.
24
25 ====================================================================
26 $Id: PropertyFeederDispatcher.java,v 1.2 2005/07/06 15:36:00 moroy Exp $
27 ====================================================================*/

28
29 package org.objectweb.util.explorer.property.lib;
30
31 import org.objectweb.fractal.api.NoSuchInterfaceException;
32 import org.objectweb.util.explorer.core.common.api.Description;
33 import org.objectweb.util.explorer.core.common.lib.BindingFeature;
34 import org.objectweb.util.explorer.property.api.PropertyFeeder;
35
36 /**
37  *
38  *
39  * @author <a HREF="mailto:Jerome.Moroy@lifl.fr">Jérôme Moroy</a>,
40  * <a HREF="mailto:Philippe.Merle@lifl.fr">Philippe Merle</a>.
41  *
42  * @version 0.1
43  */

44 public class PropertyFeederDispatcher
45      extends BindingFeature
46   implements PropertyFeeder
47 {
48
49     //==================================================================
50
//
51
// Internal States.
52
//
53
// ==================================================================
54

55     // ==================================================================
56
//
57
// Constructors.
58
//
59
// ==================================================================
60

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

67     /**
68      * Provides the interface compliant with the given interface name suffixe.
69      * The name of the binding must be the following:<br>
70      * <code>&#160;&#160;PropertyFeeder.PROPERTY_FEEDER + "-collection-" + itfSuffixe</code>
71      * @return The associated PropertyProvider
72      */

73      protected PropertyFeeder getExplorerPropertyFeeder(String JavaDoc itfSuffixeName){
74         try {
75             return (PropertyFeeder)lookupFc(PropertyFeeder.PROPERTY_FEEDER + "-collection-" + itfSuffixeName);
76         } catch (NoSuchInterfaceException e) {
77             getTrace().info(PropertyFeeder.PROPERTY_FEEDER + "-collection-" + itfSuffixeName + ": interface not found!");
78             return null;
79         }
80         
81     }
82     
83     // ==================================================================
84
//
85
// Public methods for BindingFeature abstract class.
86
//
87
// ==================================================================
88

89     /**
90      * @see org.objectweb.util.explorer.core.common.lib.BindingFeature#clientFc()
91      */

92     public String JavaDoc[] clientFc() {
93         return new String JavaDoc[]{PropertyFeeder.PROPERTY_FEEDER + "-collection"};
94     }
95
96     // ==================================================================
97
//
98
// Public methods for ExplorerPropertyFeeder interface.
99
//
100
// ==================================================================
101

102     /**
103      * @see org.objectweb.util.explorer.property.api.PropertyFeeder#feed(java.lang.String, java.lang.Object, org.objectweb.util.explorer.core.common.api.Description)
104      */

105     public void feed(String JavaDoc propertyType, Object JavaDoc key, Description value) {
106         PropertyFeeder propertyFeeder = getExplorerPropertyFeeder(propertyType);
107         if(propertyFeeder!=null){
108             propertyFeeder.feed(propertyType, key, value);
109         }
110     }
111
112 }
113
114
115
Popular Tags