Class L2CacheRetrieveFieldManager

  • All Implemented Interfaces:
    FieldManager

    public class L2CacheRetrieveFieldManager
    extends AbstractFieldManager
    FieldManager responsible for retrieving the values from the provided CachedPC object.
    • Field Detail

      • sm

        DNStateManager sm
        StateManager of the object we are copying values into.
      • cachedPC

        CachedPC cachedPC
        CachedPC that we are taking values from.
      • fieldsNotLoaded

        java.util.List<java.lang.Integer> fieldsNotLoaded
    • Constructor Detail

    • Method Detail

      • getFieldsNotLoaded

        public int[] getFieldsNotLoaded()
      • fetchIntField

        public int fetchIntField​(int fieldNumber)
        Description copied from interface: FieldManager
        Fetch an int field at the specified field number, returning it.
        Specified by:
        fetchIntField in interface FieldManager
        Overrides:
        fetchIntField in class AbstractFieldManager
        Parameters:
        fieldNumber - Number of the field
        Returns:
        The value
      • fetchStringField

        public java.lang.String fetchStringField​(int fieldNumber)
        Description copied from interface: FieldManager
        Fetch a string field at the specified field number, returning it.
        Specified by:
        fetchStringField in interface FieldManager
        Overrides:
        fetchStringField in class AbstractFieldManager
        Parameters:
        fieldNumber - Number of the field
        Returns:
        The value
      • fetchObjectField

        public java.lang.Object fetchObjectField​(int fieldNumber)
        Description copied from interface: FieldManager
        Fetch an object field at the specified field number, returning it.
        Specified by:
        fetchObjectField in interface FieldManager
        Overrides:
        fetchObjectField in class AbstractFieldManager
        Parameters:
        fieldNumber - Number of the field
        Returns:
        The value
      • processContainerField

        private java.lang.Object processContainerField​(AbstractMemberMetaData mmd,
                                                       java.lang.Object container)
      • processField

        private java.lang.Object processField​(AbstractMemberMetaData mmd,
                                              java.lang.Object value)
      • getObjectFromCachedId

        private java.lang.Object getObjectFromCachedId​(java.lang.Object cachedId)
      • newContainer

        static <T> T newContainer​(java.lang.Object container,
                                  AbstractMemberMetaData mmd,
                                  ContainerHandler containerHandler)
        Copy container without using the container handler and metadata type info. Calling newContainer from container handler for interfaces will return the default chosen implementation, but this causes the JDO TCK (TestCollectionCollections) to fail because it expects Collection fields to return the same or at most a List.
      • convertCachedPCToPersistable

        private java.lang.Object convertCachedPCToPersistable​(CachedPC cachedPC,
                                                              int memberNumber,
                                                              PersistableObjectType objectType)
        Method to convert a nested (i.e embedded) CachedPC back to the persistable object it represents.
        Parameters:
        cachedPC - The CachedPC
        memberNumber - Member number in the owning object where this is stored
        objectType - Type of object that is embedded/serialised
        Returns:
        The (persistable) object