Class MulticastDiscoveryAgent

    • Constructor Detail

      • MulticastDiscoveryAgent

        public MulticastDiscoveryAgent​(URI discoveryURI)
    • Method Detail

      • setScheduler

        public void setScheduler​(ScheduledExecutorService scheduler)
        Description copied from interface: DiscoveryAgent
        Provider a ScheduledExecutorService to the DiscoveryAgent that requires a scheduler to perform its discovery work. If the agent performs long polling style operations such as a socket read then it should not use the provided scheduler as that could block other agents from performing their own work.
        Specified by:
        setScheduler in interface DiscoveryAgent
        Parameters:
        scheduler - An initialized Scheduler service that this agent can use for its work.
      • isSchedulerRequired

        public boolean isSchedulerRequired()
        Description copied from interface: DiscoveryAgent
        Indicates if this DiscoveryAgent requires a ScheduledExecutorService in order to perform its discovery work.
        Specified by:
        isSchedulerRequired in interface DiscoveryAgent
        Returns:
        true if the agent requires that its parent provide it with a scheduler.
      • close

        public void close()
        Description copied from interface: DiscoveryAgent
        Stops the agent after which no new remote peers will be found. This method should attempt to close any agent resources and if an error occurs it should handle it and not re-throw to the calling entity.
        Specified by:
        close in interface DiscoveryAgent
      • suspend

        public void suspend()
        Description copied from interface: DiscoveryAgent
        Suspends the Agent which suppresses any new attempts to discover remote peers until the agent is resumed. If the service is not able to be suspended then this method should not throw an Exception, simply return as if successful.
        Specified by:
        suspend in interface DiscoveryAgent
      • resume

        public void resume()
        Description copied from interface: DiscoveryAgent
        Resumes discovery by this agent if it was previously suspended. If the agent does not support being suspended or is closed this method should simply return without throwing any exceptions.
        Specified by:
        resume in interface DiscoveryAgent
      • run

        public void run()
        Specified by:
        run in interface Runnable
      • getDiscvoeryURI

        public URI getDiscvoeryURI()
        Returns:
        the original URI used to create the Discovery Agent.
      • isLoopBackMode

        public boolean isLoopBackMode()
        Returns:
        Returns the loopBackMode.
      • setLoopBackMode

        public void setLoopBackMode​(boolean loopBackMode)
        Parameters:
        loopBackMode - The loopBackMode to set.
      • getTimeToLive

        public int getTimeToLive()
        Returns:
        Returns the timeToLive.
      • setTimeToLive

        public void setTimeToLive​(int timeToLive)
        Parameters:
        timeToLive - The timeToLive to set.
      • getKeepAliveInterval

        public long getKeepAliveInterval()
      • setKeepAliveInterval

        public void setKeepAliveInterval​(long keepAliveInterval)
      • setInterface

        public void setInterface​(String mcInterface)
      • setNetworkInterface

        public void setNetworkInterface​(String mcNetworkInterface)
      • setJoinNetworkInterface

        public void setJoinNetworkInterface​(String mcJoinNetwrokInterface)
      • getGroup

        public String getGroup()
        Returns:
        the multicast group this agent is assigned to.
      • setGroup

        public void setGroup​(String group)
        Sets the multicast group this agent is assigned to. The group can only be set prior to starting the agent, once started the group change will never take effect.
        Parameters:
        group - the multicast group the agent is assigned to.
      • getService

        public String getService()
        Returns the name of the service that is providing the discovery data for this agent such as ActiveMQ.
        Returns:
        the name of the service that is advertising remote peer data.
      • setService

        public void setService​(String name)
        Sets the name of the service that is providing the remote peer discovery data.
        Parameters:
        name - the name of the service that provides this agent with remote peer data.
      • getParser

        public PacketParser getParser()
        Returns:
        the currently configured datagram packet parser for this agent.
      • setParser

        public void setParser​(PacketParser parser)
        Sets the datagram packet parser used to read the discovery data broadcast by the service being monitored for remote peers.
        Parameters:
        parser - the datagram packet parser to use.