Interface FFDCSelfIntrospectable

All Known Implementing Classes:
ProtectedString, TraceComponent

public interface FFDCSelfIntrospectable
This interface is for objects that want to have control of how they are dumped in the FFDC report. In the Full Profile, this was also used to control FFDC reporting for objects with senstitive fields. This is not required if the @Sensistive annotation is used as it will correctly protect sensitive fields.
  • Method Summary

    Modifier and Type
    Method
    Description
    Returns an array of Strings representing the object's state.
  • Method Details

    • introspectSelf

      String[] introspectSelf()
      Returns an array of Strings representing the object's state.

      Do not return any sensitive information in the FFDC dump

      If the object implements this interface, normal introspection dump will be skipped. Ensure that all information that you want captured in the FFDC is included in the return of this method.

      The Strings can take the following format:

      • name=value
      • name=
      • value
      • null

      Example implementation:

      
       public String[] introspectSelf() {
       StringBuffer introspectBuffer = new StringBuffer();
       String[] returnValue = new String[2];
       introspectBuffer.append("variableName1 = ");
       introspectBuffer.append(variableName1);
       returnValue[0] = new String(introspectBuffer);
       introspectBuffer.setLength(0);
       introspectBuffer.append("variableName2 = ");
       introspectBuffer.append(variableName2);
       returnValue[1] = new String(introspectBuffer);
       return returnValue;
       }
       

      Returns:
      an array of Strings representing the instance variables of this object that do not contain sensitive data.