Package org.jgroups

Class DefaultMessageFactory

java.lang.Object
org.jgroups.DefaultMessageFactory
All Implemented Interfaces:
MessageFactory

public class DefaultMessageFactory extends Object implements MessageFactory
Default implementation of MessageFactory. Uses an array for message IDs less then 32, and a hashmap for types above 32
Since:
5.0
  • Field Details

  • Constructor Details

    • DefaultMessageFactory

      public DefaultMessageFactory()
  • Method Details

    • create

      public <T extends Message> T create(short type)
      Description copied from interface: MessageFactory
      Creates a message based on the given ID
      Specified by:
      create in interface MessageFactory
      Type Parameters:
      T - The type of the message
      Parameters:
      type - The ID
      Returns:
      A message
    • register

      public <T extends MessageFactory> T register(short type, Supplier<? extends Message> generator)
      Description copied from interface: MessageFactory
      Registers a new creator of messages
      Specified by:
      register in interface MessageFactory
      Parameters:
      type - The type associated with the new payload. Needs to be the same in all nodes of the same cluster, and needs to be available (ie., not taken by JGroups or other applications).
      generator - The creator of the payload associated with the given type