01: // Copyright 2004, 2005 The Apache Software Foundation
02: //
03: // Licensed under the Apache License, Version 2.0 (the "License");
04: // you may not use this file except in compliance with the License.
05: // You may obtain a copy of the License at
06: //
07: // http://www.apache.org/licenses/LICENSE-2.0
08: //
09: // Unless required by applicable law or agreed to in writing, software
10: // distributed under the License is distributed on an "AS IS" BASIS,
11: // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12: // See the License for the specific language governing permissions and
13: // limitations under the License.
14:
15: package org.apache.hivemind.service.impl;
16:
17: import java.util.HashMap;
18: import java.util.List;
19: import java.util.Map;
20:
21: import org.apache.hivemind.SymbolSource;
22: import org.apache.hivemind.impl.BaseLocatable;
23:
24: /**
25: * Implementation of {@link org.apache.hivemind.SymbolSource} driven off of an extension point.
26: *
27: * @author Howard Lewis Ship
28: */
29: public class DefaultsSymbolSource extends BaseLocatable implements
30: SymbolSource {
31: private List _defaults;
32:
33: private Map _symbols = new HashMap();
34:
35: public String valueForSymbol(String name) {
36: return (String) _symbols.get(name);
37: }
38:
39: public void initializeService() {
40: int count = _defaults.size();
41: for (int i = 0; i < count; i++) {
42: FactoryDefault fd = (FactoryDefault) _defaults.get(i);
43:
44: String symbol = fd.getSymbol();
45: String value = fd.getValue();
46:
47: _symbols.put(symbol, value);
48: }
49: }
50:
51: public void setDefaults(List list) {
52: _defaults = list;
53: }
54: }
|