org.cougaar.core.qos.profile
Class ServiceProviderBase

java.lang.Object
  extended by org.cougaar.core.qos.profile.ServiceProviderBase
All Implemented Interfaces:
org.cougaar.core.component.ServiceProvider

public abstract class ServiceProviderBase
extends java.lang.Object
implements org.cougaar.core.component.ServiceProvider

A base class for ServiceProviders.

Copied from org.cougaar.core.wp.resolver, should be moved to org.cougaar.core.component.


Nested Class Summary
protected  class ServiceProviderBase.MyServiceImpl
           
 
Constructor Summary
ServiceProviderBase()
           
 
Method Summary
protected abstract  java.lang.Class getClientClass()
           
protected abstract  org.cougaar.core.component.Service getService(java.lang.Object client)
           
 java.lang.Object getService(org.cougaar.core.component.ServiceBroker sb, java.lang.Object requestor, java.lang.Class serviceClass)
           
protected abstract  java.lang.Class getServiceClass()
           
protected abstract  void register(java.lang.Object client)
           
 void releaseService(org.cougaar.core.component.ServiceBroker sb, java.lang.Object requestor, java.lang.Class serviceClass, java.lang.Object service)
           
protected abstract  void unregister(java.lang.Object client)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ServiceProviderBase

public ServiceProviderBase()
Method Detail

register

protected abstract void register(java.lang.Object client)

unregister

protected abstract void unregister(java.lang.Object client)

getServiceClass

protected abstract java.lang.Class getServiceClass()

getClientClass

protected abstract java.lang.Class getClientClass()

getService

protected abstract org.cougaar.core.component.Service getService(java.lang.Object client)

getService

public java.lang.Object getService(org.cougaar.core.component.ServiceBroker sb,
                                   java.lang.Object requestor,
                                   java.lang.Class serviceClass)
Specified by:
getService in interface org.cougaar.core.component.ServiceProvider

releaseService

public void releaseService(org.cougaar.core.component.ServiceBroker sb,
                           java.lang.Object requestor,
                           java.lang.Class serviceClass,
                           java.lang.Object service)
Specified by:
releaseService in interface org.cougaar.core.component.ServiceProvider