001 // Copyright 2004, 2005 The Apache Software Foundation
002 //
003 // Licensed under the Apache License, Version 2.0 (the "License");
004 // you may not use this file except in compliance with the License.
005 // You may obtain a copy of the License at
006 //
007 // http://www.apache.org/licenses/LICENSE-2.0
008 //
009 // Unless required by applicable law or agreed to in writing, software
010 // distributed under the License is distributed on an "AS IS" BASIS,
011 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
012 // See the License for the specific language governing permissions and
013 // limitations under the License.
014
015 package org.apache.hivemind.lib.strategy;
016
017 import org.apache.hivemind.impl.BaseLocatable;
018
019 /**
020 * Provides a mapping of subject class to strategy instance, used by
021 * {@link org.apache.hivemind.lib.strategy.StrategyFactory} when building a service.
022 *
023 * @author Howard M. Lewis Ship
024 * @since 1.1
025 */
026 public class StrategyContribution extends BaseLocatable
027 {
028 private Class _registerClass;
029
030 private Object _strategy;
031
032 public Object getStrategy()
033 {
034 return _strategy;
035 }
036
037 public void setStrategy(Object adaptor)
038 {
039 _strategy = adaptor;
040 }
041
042 public Class getRegisterClass()
043 {
044 return _registerClass;
045 }
046
047 public void setRegisterClass(Class registerClass)
048 {
049 _registerClass = registerClass;
050 }
051 }