Class DynamicClassLoader

  • All Implemented Interfaces:
    Service

    public class DynamicClassLoader
    extends Object
    implements Service
    A service implementation for supporting dynamic class transfer at a node. When started, JFTP server and ClassMananger processes will be spawned and send/receive filters created. To support dynamic class loading over a given channel, plug the TX filter into the sending end and the RX filter into the receiving end. The channel can then be used normally.
    Author:
    Quickstone Technologies Limited
    • Constructor Detail

      • DynamicClassLoader

        public DynamicClassLoader()
    • Method Detail

      • start

        public boolean start()
        Starts the dynamic loader service by spawning ClassManager and JFTP processes.
        Specified by:
        start in interface Service
        Returns:
        true if the service started successfully.
      • stop

        public boolean stop()
        Stops the dynamic loader service.
        Specified by:
        stop in interface Service
        Returns:
        true iff the service has successfully stopped.
      • init

        public boolean init​(ServiceSettings settings)
        Initializes the dynamic loader service.
        Specified by:
        init in interface Service
        Parameters:
        settings - The settings used by the service.
        Returns:
        true iff the service has been initialized.
      • isRunning

        public boolean isRunning()
        Returns true iff the service is running.
        Specified by:
        isRunning in interface Service
        Returns:
        true iff the service is currently running.
      • getChannelTxFilter

        public Filter getChannelTxFilter()
        Returns the TX filter to be used at the sending end of a channel if dynamic class loading is to be supported over that channel. If there is a TX filter at the sending end, there must be a RX filter at the receiving end.
      • getChannelRxFilter

        public Filter getChannelRxFilter()
        Returns the RX filter to be used at the receiving end of a channel if dynamic class loading is to be supported over that channel. The filter returned is safe to use if there is no TX filter at the sending end.
      • getNonDynamicClassLoadingRxFilter

        public static Filter getNonDynamicClassLoadingRxFilter()
        An alternative RX filter that does not support dynamic class loading but will properly unmarshal objects wrapped up by a TX filter.