java.lang.Object
java.lang.Record
org.eclipse.milo.opcua.stack.core.types.builtin.DiagnosticInfo
Record Components:
namespaceUri - The symbolicId is defined within the context of a namespace. This namespace is represented as a string and is conveyed to the Client in the stringTable parameter of the ResponseHeader parameter defined in 7.27. The namespaceUri parameter contains the index into the stringTable for this string. -1 indicates that no string is specified.

The namespaceUri shall not be the standard OPC UA namespace. There are no symbolicIds provided for standard StatusCodes.

symbolicId - The symbolicId shall be used to identify a vendor-specific error or condition; typically the result of some server internal operation. The maximum length of this string is 32 characters. Servers wishing to return a numeric return code should convert the return code into a string and use this string as symbolicId (e.g., "0xC0040007" or "-4").

This symbolic identifier string is conveyed to the Client in the stringTable parameter of the ResponseHeader parameter defined in 7.27. The symbolicId parameter contains the index into the stringTable for this string. -1 indicates that no string is specified.

The symbolicId shall not contain StatusCodes. If the localizedText contains a translation for the description of a StatusCode, the symbolicId is -1.

locale - The locale part of the vendor-specific localized text describing the symbolic id.

This localized text string is conveyed to the Client in the stringTable parameter of the ResponseHeader parameter defined in 7.27. The localizedText parameter contains the index into the stringTable for this string. -1 indicates that no string is specified.

localizedText - A vendor-specific localized text string describes the symbolic id. The maximum length of this text string is 256 characters.

This localized text string is conveyed to the Client in the stringTable parameter of the ResponseHeader parameter defined in 7.27. The localizedTextIndex parameter contains the index into the stringTable for this string. -1 indicates that no string is specified.

The localizedText refers to the symbolicId if present or the string that describes the standard StatusCode if the server provides translations. If the index is -1, the server has no translation to return and the client should use the invariant StatusCode description from the specification.

additionalInfo - Vendor-specific diagnostic information.
innerStatusCode - The StatusCode from the inner operation.

Many applications will make calls into underlying systems during OPC UA request processing. An OPC UA Server has the option of reporting the status from the underlying system in the diagnostic info.

innerDiagnosticInfo - The diagnostic info associated with the inner StatusCode.

@NullMarked public record DiagnosticInfo(int namespaceUri, int symbolicId, int locale, int localizedText, @Nullable String additionalInfo, @Nullable StatusCode innerStatusCode, @Nullable DiagnosticInfo innerDiagnosticInfo) extends Record
Vendor-specific diagnostic information
  • Field Details

  • Constructor Details

    • DiagnosticInfo

      public DiagnosticInfo(int namespaceUri, int symbolicId, int locale, int localizedText, @Nullable String additionalInfo, @Nullable StatusCode innerStatusCode, @Nullable DiagnosticInfo innerDiagnosticInfo)
      Creates an instance of a DiagnosticInfo record class.
      Parameters:
      namespaceUri - the value for the namespaceUri record component
      symbolicId - the value for the symbolicId record component
      locale - the value for the locale record component
      localizedText - the value for the localizedText record component
      additionalInfo - the value for the additionalInfo record component
      innerStatusCode - the value for the innerStatusCode record component
      innerDiagnosticInfo - the value for the innerDiagnosticInfo record component
  • Method Details

    • toString

      public final String toString()
      Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
      Specified by:
      toString in class Record
      Returns:
      a string representation of this object
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared with Objects::equals(Object,Object); primitive components are compared with '=='.
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • namespaceUri

      public int namespaceUri()
      Returns the value of the namespaceUri record component.
      Returns:
      the value of the namespaceUri record component
    • symbolicId

      public int symbolicId()
      Returns the value of the symbolicId record component.
      Returns:
      the value of the symbolicId record component
    • locale

      public int locale()
      Returns the value of the locale record component.
      Returns:
      the value of the locale record component
    • localizedText

      public int localizedText()
      Returns the value of the localizedText record component.
      Returns:
      the value of the localizedText record component
    • additionalInfo

      public @Nullable String additionalInfo()
      Returns the value of the additionalInfo record component.
      Returns:
      the value of the additionalInfo record component
    • innerStatusCode

      public @Nullable StatusCode innerStatusCode()
      Returns the value of the innerStatusCode record component.
      Returns:
      the value of the innerStatusCode record component
    • innerDiagnosticInfo

      public @Nullable DiagnosticInfo innerDiagnosticInfo()
      Returns the value of the innerDiagnosticInfo record component.
      Returns:
      the value of the innerDiagnosticInfo record component