Package tigase.server

# Interface ServerComponent

All Known Subinterfaces:
  `ClusteredComponentIfc`, `ComponentRegistrator`, `Configurable`, `MessageReceiver`, `MessageRouterIfc`, `StatisticsContainer`, `VHostListener`, `XMPPService`

All Known Implementing Classes:
  `AbstractComponent`, `AbstractComponentRegistrator`, `AbstractKernelBasedComponent`, `AbstractMessageReceiver`, `AmpComponent`, `AmpComponentClustered`, `BasicComponent`, `BoshConnectionClustered`, `BoshConnectionManager`, `ClientConnectionClustered`, `ClientConnectionManager`, `ClusterConnectionManager`, `ClusterController`, `ComponentConnectionManager`, `ComponentProtocol`, `ComponentProtocolManager`, `Configurator`, `ConfiguratorAbstract`, `ConfiguratorOld`, `ConnectionManager`, `EchoComponent`, `EventBusComponent`, `EventBusComponent`, `ExternalServiceDiscoveryComponent`, `MessageRouter`, `MonitorComponent`, `MonitorComponent`, `RTBLComponent`, `S2SConnectionManager`, `SessionManager`, `SessionManagerClustered`, `StatisticsCollector`, `TestComponent`, `VHostManager`, `VirtualComponent`, `WebSocketClientConnectionClustered`, `WebSocketClientConnectionManager`, `XMPPServiceCollector`

public interface ServerComponent
Interface ServerComponent
Object of this type can be managed by MessageRouter. All classes which are loaded by MessageRouter must inherit this interface.
Created: Tue Nov 22 07:07:11 2005

Author:
  Artur Hefczyc

- ## Method Summary

  Modifier and Type
  Method
  Description
  `JID`
  `getComponentId()`
  Method returns component jid in form of the component name followed by server hostname as a domain.
  `ComponentInfo`
  `getComponentInfo()`
  Allows to obtain various informations about components
  `String`
  `getName()`
  Method returns name of the component.
  `void`
  `initializationCompleted()`
  Method is called by `MessageRouter` when all the startup components of the server have been loaded and configured through setProperties(...) call.
  `boolean`
  `isInitializationComplete()`
  Method returns information about whether the initialization process (initializationCompleted()) method has been called.
  `void`
  `processPacket(Packet packet, Queue<Packet> results)`
  `processPacket` is a blocking processing method implemented by all components.
  `void`
  `release()`
  Method called when component is being stopped and unloaded.
  `void`
  `setName(String name)`
  Method used to assign component name (localpart of the component)

- ## Method Details

  - ### initializationCompleted

    void initializationCompleted()
    Method is called by `MessageRouter` when all the startup components of the server have been loaded and configured through setProperties(...) call. At this point the whole server should be loaded and functional, except initializations taking place in this routine.

  - ### processPacket

    void processPacket(Packet packet, Queue<Packet> results)
    `processPacket` is a blocking processing method implemented by all components. This method processes packet and returns results instantly without waiting for any resources.
    Parameters:
      `packet` - a `Packet` value

  - ### release

    void release()
    Method called when component is being stopped and unloaded.

  - ### getComponentId

    JID getComponentId()
    Method returns component jid in form of the component name followed by server hostname as a domain.
    Returns:
      jid

  - ### getComponentInfo

    ComponentInfo getComponentInfo()
    Allows to obtain various informations about components
    Returns:
      information about particular component

  - ### getName

    String getName()
    Method returns name of the component.
    Returns:
      name of the component

  - ### setName

    void setName(String name)
    Method used to assign component name (localpart of the component)
    Parameters:
      `name` - to be assigned

  - ### isInitializationComplete

    boolean isInitializationComplete()
    Method returns information about whether the initialization process (initializationCompleted()) method has been called.
    Returns:
      `true` if initialization of the object has been completed `false` otherwise