Class ListPeer

    • Constructor Summary

      Constructors 
      Constructor Description
      ListPeer​(int listenPort)
      Creates a new ListPeer that binds to the specified port.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      <E> NetworkList<E> publish​(EventList<E> source, java.lang.String path, ByteCoder byteCoder)
      Publish the specified EventList with the specified name.
      void start()
      Starts the peer.
      void stop()
      Stops the peer.
      NetworkList subscribe​(java.lang.String host, int port, java.lang.String path, ByteCoder byteCoder)
      Subscribe to the EventList with the specified name.
      • Methods inherited from class java.lang.Object

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

      • ListPeer

        public ListPeer​(int listenPort)
        Creates a new ListPeer that binds to the specified port.
    • Method Detail

      • start

        public void start()
                   throws java.io.IOException
        Starts the peer. This binds to the listen port and allows connections to be sent and received.
        Throws:
        java.io.IOException - if the listen port cannot be binded to. This will be due to the port being in use or as a consequence of insufficient privileges.
      • stop

        public void stop()
        Stops the peer. This disconnects all active EventLists and releases the listen port.
      • publish

        public <E> NetworkList<E> publish​(EventList<E> source,
                                          java.lang.String path,
                                          ByteCoder byteCoder)
        Publish the specified EventList with the specified name.
        Parameters:
        source - the EventList to publish. Each change to this EventList will be immediately published to all subscribers.
        path - the address that the EventList shall be published under. The path must start with a slash character. This must be unique among all EventLists published on this ListPeer.
        byteCoder - a helper that can convert the elements of the EventList into binary network-transmittable form. Some general purpose ByteCoders are available in the GlazedLists factory class.
        Returns:
        a simple decorator of the published EventList with additional methods to bring the list offline. This list is writable.
      • subscribe

        public NetworkList subscribe​(java.lang.String host,
                                     int port,
                                     java.lang.String path,
                                     ByteCoder byteCoder)
        Subscribe to the EventList with the specified name.
        Parameters:
        host - the network hostname of the machine serving the original copy of the data of interest. Together with the port, this should map to a proper InetSocketAddress.
        port - the port the EventList of interest is being published on.
        path - the address that the EventList is published under.
        byteCoder - a helper that can convert the binary data from the network into list elements for this EventList. Some general purpose ByteCoders are available in the GlazedLists factory class.
        Returns:
        the EventList that gets its data from the specified remote source. This EventList will contain no data until the connection completes. This list is not writable.