Class InMemoryMulticastBus

java.lang.Object
org.j7m.middleware.registry.mcast.InMemoryMulticastBus
All Implemented Interfaces:
AutoCloseable, MulticastBus
Direct Known Subclasses:
MulticastRegistryBus

public class InMemoryMulticastBus extends Object implements MulticastBus
Deterministic in-memory multicast adapter for tests and demos.

The adapter models group delivery without sockets. It is opt-in and owns no global state. Calls are synchronous, bounded by caller deadlines, and thread-safe.

  • Constructor Details

    • InMemoryMulticastBus

      public InMemoryMulticastBus()
      Creates an empty in-memory adapter.
  • Method Details

    • register

      public void register(MulticastRegistryClient client)
      Starts delivery for one registry client.
      Specified by:
      register in interface MulticastBus
      Parameters:
      client - client to attach
    • unregister

      public void unregister(MulticastRegistryClient client)
      Stops delivery for one registry client.
      Specified by:
      unregister in interface MulticastBus
      Parameters:
      client - client to detach
    • list

      public List<org.j7m.middleware.registry.api.RegistryRecord> list(MulticastRegistryClient client, MulticastMessageEnvelope envelope, org.j7m.middleware.registry.api.RegistryQuery query, long deadlineMillis)
      Sends a list question and collects responses.
      Specified by:
      list in interface MulticastBus
      Parameters:
      client - requesting client
      envelope - question envelope
      query - query payload
      deadlineMillis - absolute deadline
      Returns:
      immutable response records
    • diagnostics

      public MulticastBusDiagnostics diagnostics()
      Returns adapter diagnostics.
      Specified by:
      diagnostics in interface MulticastBus
      Returns:
      diagnostics snapshot
    • adapterType

      public String adapterType()
      Returns the adapter type.
      Specified by:
      adapterType in interface MulticastBus
      Returns:
      adapter type
    • endpointSummary

      public String endpointSummary()
      Returns a safe endpoint summary.
      Specified by:
      endpointSummary in interface MulticastBus
      Returns:
      endpoint summary
    • close

      public void close()
      Closes all owned resources.
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface MulticastBus