6.4.3. Externalizer Identifiers

AdvancedExternalizers in JBoss Data Grid require Externalizer implementations to provide an identifier using one of the following:
  • getId() implementations.
  • Declarative or Programmatic configuration that identifies the externalizer when unmarshalling a payload.
When registering Externalizers using declarative or programmatic configuration, registration must occur when cache managers are created.
GetId() will either return a positive integer or a null value:
  • A positive integer allows the externalizer to be identified when read and assigned to the correct Externalizer capable of reading the contents.
  • A null value indicates that the identifier of the AdvancedExternalizer will be defined via declarative or programmatic configuration.
Any positive integer can be used, provided it is not used by any other identifier in the system.
JBoss Data Grid will check for identifier duplicates on start up, and halts the start up process if duplicates are found.