Class J9IndexableObjectHelper

java.lang.Object
com.ibm.j9ddr.vm29.pointer.helper.J9ObjectHelper
com.ibm.j9ddr.vm29.pointer.helper.J9IndexableObjectHelper

public class J9IndexableObjectHelper extends J9ObjectHelper
  • Field Summary

    Fields declared in class J9ObjectHelper

    compressObjectReferences, mixedReferenceMode
    Modifier and Type
    Field
    Description
    static final boolean
     
    static final boolean
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static com.ibm.j9ddr.vm29.pointer.generated.J9ArrayClassPointer
    clazz(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)
     
    static long
    Get the header size of a contiguous indexable object.
    static long
    Get the header size of a discontiguous indexable object.
    static U32
    flags(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)
     
    static void
    getBooleanData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, boolean[] dst, int start, int length, int destStart)
     
    static void
    getByteData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, byte[] dst, int start, int length, int destStart)
     
    static void
    getCharData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, char[] dst, int start, int length, int destStart)
     
    static String
    getClassName(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)
     
    static Object
    getData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)
     
    static void
    getData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, Object dst, int start, int length, int destStart)
    Get the requested array data elements and output these elements to the dst method parameter.
    getDataAddrForIndexable(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)
    Get the dataAddr field for the indexable object.
    static String
    getDataAsString(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer array)
     
    static String
    getDataAsString(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer array, int dumpLimit, int characterDumpLimit)
     
    static void
    getDoubleData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, double[] dst, int start, int length, int destStart)
     
    getElementEA(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, int index, int dataSize)
    Get the address for the desired element in the array.
    static void
    getFloatData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, float[] dst, int start, int length, int destStart)
     
    static void
    getIntData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, int[] dst, int start, int length, int destStart)
     
    static void
    getLongData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, long[] dst, int start, int length, int destStart)
     
    static void
    getObjectData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer[] dst, int start, int length, int destStart)
     
    static void
    getShortData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, short[] dst, int start, int length, int destStart)
     
    static boolean
    hasCorrectDataAddrPointer(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)
    Determine the validity of the data address belonging to objPointer.
    static UDATA
    monitor(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)
     
    static U32
    rawSize(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)
     
    static U32
    size(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer)
     
    static U32
    size(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer)
     

    Methods declared in class J9ObjectHelper

    clazz, flags, getBooleanField, getByteField, getByteFromArrayByIndex, getCharField, getClassName, getDoubleField, getFieldOffset, getFloatField, getIntField, getJavaName, getLongField, getObjectField, getShortField, getStringField, headerSize, isIndexable, monitor, rawClazz, reportClassCacheStats, stringValue
    Modifier and Type
    Method
    Description
    static com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer
    clazz(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer)
     
    static U32
    flags(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer)
     
    static boolean
    getBooleanField(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer, J9ObjectFieldOffset offset)
    Returns an boolean field from the object or its super classes.
    static byte
    getByteField(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer, J9ObjectFieldOffset offset)
    Returns an byte field from the object or its super classes.
    static byte
     
    static char
    getCharField(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer, J9ObjectFieldOffset offset)
    Returns a char field from the object or its super classes.
    static String
    getClassName(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer)
    Return the name of this J9Object's class
    static double
    getDoubleField(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer, J9ObjectFieldOffset offset)
    Returns a double field from the object or its super classes.
    getFieldOffset(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer, String name, String signature)
     
    static float
    getFloatField(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer, J9ObjectFieldOffset offset)
    Returns a float field from the object or its super classes.
    static int
    getIntField(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer, J9ObjectFieldOffset offset)
    Returns an int field from the object or its super classes.
    static String
    getJavaName(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer)
     
    static long
    getLongField(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer, J9ObjectFieldOffset offset)
    Returns an long field from the object or its super classes.
    static com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer
    getObjectField(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer, J9ObjectFieldOffset offset)
    Returns an Object field from the object or its super classes.
    static short
    getShortField(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer, J9ObjectFieldOffset offset)
    Returns a short field from the object or its super classes.
    static String
    getStringField(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer, J9ObjectFieldOffset offset)
    Returns a String field from the object or its super classes.
    static long
     
    static boolean
    isIndexable(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer)
    Returns TRUE if an object is indexable, FALSE otherwise.
    static UDATA
    monitor(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer)
     
    static UDATA
    rawClazz(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer)
     
    static void
     
    static String
    stringValue(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer)
     
  • Constructor Details

    • J9IndexableObjectHelper

      public J9IndexableObjectHelper()
  • Method Details

    • flags

      public static U32 flags(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer) throws CorruptDataException
      Throws:
      CorruptDataException
    • clazz

      public static com.ibm.j9ddr.vm29.pointer.generated.J9ArrayClassPointer clazz(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer) throws CorruptDataException
      Throws:
      CorruptDataException
    • monitor

      public static UDATA monitor(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer) throws CorruptDataException
      Throws:
      CorruptDataException
    • getClassName

      public static String getClassName(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer) throws CorruptDataException
      Throws:
      CorruptDataException
    • rawSize

      public static U32 rawSize(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer) throws CorruptDataException
      Throws:
      CorruptDataException
    • size

      public static U32 size(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer) throws CorruptDataException
      Throws:
      CorruptDataException
    • size

      public static U32 size(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer objPointer) throws CorruptDataException
      Throws:
      CorruptDataException
    • contiguousHeaderSize

      public static long contiguousHeaderSize()
      Get the header size of a contiguous indexable object.
    • discontiguousHeaderSize

      public static long discontiguousHeaderSize()
      Get the header size of a discontiguous indexable object.
    • getDataAddrForIndexable

      public static VoidPointer getDataAddrForIndexable(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer) throws CorruptDataException, NoSuchFieldException
      Get the dataAddr field for the indexable object.
      Parameters:
      objPointer - the array object whose dataAddr field we are accessing
      Throws:
      CorruptDataException - if there's a problem accessing the indexable object dataAddr field
      NoSuchFieldException - if the indexable object dataAddr field does not exist on the build that generated the core file
    • getElementEA

      public static VoidPointer getElementEA(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, int index, int dataSize) throws CorruptDataException
      Get the address for the desired element in the array.
      Parameters:
      objPointer - array object whose elements we are accessing
      index - the desired index within then array
      dataSize - size of the data held in the array
      Returns:
      the address for the desired element in the array
      Throws:
      CorruptDataException
    • hasCorrectDataAddrPointer

      public static boolean hasCorrectDataAddrPointer(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer) throws CorruptDataException
      Determine the validity of the data address belonging to objPointer.
      Parameters:
      objPointer - array object who's data address validity we are checking
      Returns:
      true if the data address of objPointer is valid, false otherwise
      Throws:
      CorruptDataException - if there's a problem accessing the indexable object dataAddr field
    • getData

      public static void getData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, Object dst, int start, int length, int destStart) throws CorruptDataException
      Get the requested array data elements and output these elements to the dst method parameter.
      Parameters:
      objPointer - array object whose elements we are accessing
      dst - destination array where we will output the elements
      start - starting index of the elements we are interested in
      length - number of elements to output
      destStart - starting index of destination array where we will start outputting elements
      Throws:
      CorruptDataException
    • getByteData

      public static void getByteData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, byte[] dst, int start, int length, int destStart) throws CorruptDataException
      Throws:
      CorruptDataException
    • getCharData

      public static void getCharData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, char[] dst, int start, int length, int destStart) throws CorruptDataException
      Throws:
      CorruptDataException
    • getDoubleData

      public static void getDoubleData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, double[] dst, int start, int length, int destStart) throws CorruptDataException
      Throws:
      CorruptDataException
    • getFloatData

      public static void getFloatData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, float[] dst, int start, int length, int destStart) throws CorruptDataException
      Throws:
      CorruptDataException
    • getIntData

      public static void getIntData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, int[] dst, int start, int length, int destStart) throws CorruptDataException
      Throws:
      CorruptDataException
    • getLongData

      public static void getLongData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, long[] dst, int start, int length, int destStart) throws CorruptDataException
      Throws:
      CorruptDataException
    • getShortData

      public static void getShortData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, short[] dst, int start, int length, int destStart) throws CorruptDataException
      Throws:
      CorruptDataException
    • getBooleanData

      public static void getBooleanData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, boolean[] dst, int start, int length, int destStart) throws CorruptDataException
      Throws:
      CorruptDataException
    • getObjectData

      public static void getObjectData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer, com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer[] dst, int start, int length, int destStart) throws CorruptDataException
      Throws:
      CorruptDataException
    • getData

      public static Object getData(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer objPointer) throws CorruptDataException
      Throws:
      CorruptDataException
    • getDataAsString

      public static String getDataAsString(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer array) throws CorruptDataException
      Throws:
      CorruptDataException
    • getDataAsString

      public static String getDataAsString(com.ibm.j9ddr.vm29.pointer.generated.J9IndexableObjectPointer array, int dumpLimit, int characterDumpLimit) throws CorruptDataException
      Throws:
      CorruptDataException