Interface Service<SMD>

  • Type Parameters:
    SMD - the generic 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 java.lang.Object,B extends org.refcodes.mixin.MetaDataAccessor.MetaDataBuilder<MD,B>>, org.refcodes.mixin.MetaDataAccessor.MetaDataMutator<MD extends java.lang.Object>, org.refcodes.mixin.MetaDataAccessor.MetaDataProperty<MD extends java.lang.Object>
    • Method Summary

      • Methods inherited from interface org.refcodes.component.Destroyable

        destroy
      • Methods inherited from interface org.refcodes.mixin.MetaDataAccessor

        getMetaData