Enum Correlation

java.lang.Object
java.lang.Enum<Correlation>
org.refcodes.runtime.Correlation
All Implemented Interfaces:
Serializable, Comparable<Correlation>, java.lang.constant.Constable, org.refcodes.mixin.IdAccessor<String>, org.refcodes.mixin.IdAccessor.IdMutator<String>, org.refcodes.mixin.IdAccessor.IdProperty<String>

public enum Correlation extends Enum<Correlation> implements org.refcodes.mixin.IdAccessor.IdProperty<String>
The Correlation assigns an according (as of the enumeration) Correlation-TID to the invoking process, this TID is used in log files and is part of the process's request or response pay-load in order to track process execution throughout a JVM.
  • Nested Class Summary

    Nested classes/interfaces inherited from class java.lang.Enum

    Enum.EnumDesc<E extends Enum<E>>

    Nested classes/interfaces inherited from interface org.refcodes.mixin.IdAccessor

    org.refcodes.mixin.IdAccessor.IdBuilder<T extends Object,B extends org.refcodes.mixin.IdAccessor.IdBuilder<T,B>>, org.refcodes.mixin.IdAccessor.IdMutator<T extends Object>, org.refcodes.mixin.IdAccessor.IdProperty<T extends Object>
  • Enum Constant Summary

    Enum Constants
    Enum Constant
    Description
    A single request spanning over multiple systems.
    Identifying a session for multiple requests spanning over multiple systems. traced.
  • Method Summary

    Modifier and Type
    Method
    Description
    Retrieves the Correlation-TID assigned to the current Thread.
    static boolean
    Evaluates whether any of the given Correlation-IDs is present (not null).
    Creates a new Correlation-TID no matter whether there is a Correlation-TID already assigned to the current thread or not.
    Returns a Correlation-TID in any case: Creates a new Correlation-TID in case there is none yet for the current thread.
    void
    setId(String aCorrelationId)
    Assigns the given Correlation-TID to the current Thread.
    static String
    Returns a String with all Correlation-IDs found separated by a Delimiter.CORRELATION_ID character from each other.
    Returns the enum constant of this type with the specified name.
    static Correlation[]
    Returns an array containing the constants of this enum type, in the order they are declared.

    Methods inherited from class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.refcodes.mixin.IdAccessor.IdProperty

    letId
  • Enum Constant Details

    • REQUEST

      public static final Correlation REQUEST
      A single request spanning over multiple systems.
    • SESSION

      public static final Correlation SESSION
      Identifying a session for multiple requests spanning over multiple systems. traced.
  • Method Details

    • values

      public static Correlation[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static Correlation valueOf(String name)
      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null
    • setId

      public void setId(String aCorrelationId)
      Assigns the given Correlation-TID to the current Thread.
      Specified by:
      setId in interface org.refcodes.mixin.IdAccessor.IdMutator<String>
      Parameters:
      aCorrelationId - The Correlation-TID to be assigned to the current Thread.
    • getId

      public String getId()
      Retrieves the Correlation-TID assigned to the current Thread. Call pullId() to make sure a Correlation-TID is created for the current thread if none exists yet or call nextId() in order to create a new Correlation-TID.
      Specified by:
      getId in interface org.refcodes.mixin.IdAccessor<String>
      Returns:
      The Correlation-TID of the current Thread.
    • pullId

      public String pullId()
      Returns a Correlation-TID in any case: Creates a new Correlation-TID in case there is none yet for the current thread. Else the current Correlation-TID is returned.
      Returns:
      The Correlation-TID as of now.
    • nextId

      public String nextId()
      Creates a new Correlation-TID no matter whether there is a Correlation-TID already assigned to the current thread or not.
      Returns:
      the string
    • toFullCorrelationId

      public static String toFullCorrelationId()
      Returns a String with all Correlation-IDs found separated by a Delimiter.CORRELATION_ID character from each other. Any portion of the full Correlation-TID not being set is represented by a "<?>" sequence defined by Literal.UNKNOWN.
      Returns:
      The full Correlation-TID.
    • hasAnyCorrelationId

      public static boolean hasAnyCorrelationId()
      Evaluates whether any of the given Correlation-IDs is present (not null).
      Returns:
      True if at least one Correlation-TID is not null.