Class MainServer

  • All Implemented Interfaces:
    java.beans.PropertyChangeListener, java.lang.Runnable, java.util.EventListener

    public class MainServer
    extends java.lang.Object
    implements java.lang.Runnable, java.beans.PropertyChangeListener
    This is a server for Z21 clients like the Z21 App or the Roco Z21 WlanMaus. It is not meant to be a fully equipped Z21 server.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      (package private) java.net.DatagramSocket mySS  
      static int port  
    • Constructor Summary

      Constructors 
      Constructor Description
      MainServer()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void propertyChange​(java.beans.PropertyChangeEvent pce)
      Change listener.
      void run()
      The main server running in a separate thread.
      void sendResponse​(java.net.InetAddress respAddress, byte[] response)
      Send a Z21 packet to a single client.
      void sendResponseToRegisteredClients​(byte[] response)
      Send a Z21 packet to all registered clients.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • run

        public void run()
        The main server running in a separate thread. Do some setup and then read from the network in loop.
        Specified by:
        run in interface java.lang.Runnable
      • sendResponseToRegisteredClients

        public void sendResponseToRegisteredClients​(byte[] response)
        Send a Z21 packet to all registered clients.
        Parameters:
        response - - a Z21 packet
      • sendResponse

        public void sendResponse​(java.net.InetAddress respAddress,
                                 byte[] response)
        Send a Z21 packet to a single client.
        Parameters:
        respAddress - - client's InetAdress
        response - - a Z21 packet
      • propertyChange

        public void propertyChange​(java.beans.PropertyChangeEvent pce)
        Change listener. If new value contains a Z21 packet, send it to all registered clients.
        Specified by:
        propertyChange in interface java.beans.PropertyChangeListener
        Parameters:
        pce - - property change event from the caller