- Type Parameters:
SMD
- the generic service meta data type
- All Superinterfaces:
org.refcodes.component.Component
,org.refcodes.component.Destroyable
,org.refcodes.mixin.MetaDataAccessor<SMD>
public interface Service<SMD>
extends org.refcodes.mixin.MetaDataAccessor<SMD>, org.refcodes.component.Component
Any
Service
to be made available by the service bus must implement
this interface. Adding methods to this interface forces any service to
implement this method which might be useful for later extensions.
To identify a Service
via lookup, we need criteria for identifying
that service. One criteria might by the type of the Service
, others
may be implementation or configuration specific. At least the configuration
specific criteria is found in the service's Meta-Data provided by the
MetaDataAccessor
which each Service
is to provide.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.refcodes.component.Destroyable
org.refcodes.component.Destroyable.DestroyAutomaton
Nested classes/interfaces inherited from interface org.refcodes.mixin.MetaDataAccessor
org.refcodes.mixin.MetaDataAccessor.MetaDataBuilder<MD extends Object,B extends org.refcodes.mixin.MetaDataAccessor.MetaDataBuilder<MD,B>>, org.refcodes.mixin.MetaDataAccessor.MetaDataMutator<MD extends Object>, org.refcodes.mixin.MetaDataAccessor.MetaDataProperty<MD extends Object>
-
Method Summary
Methods inherited from interface org.refcodes.component.Destroyable
destroy
Methods inherited from interface org.refcodes.mixin.MetaDataAccessor
getMetaData