Interface FieldAccessIF

All Known Implementing Classes:
SQLBatchManyToManyReference, SQLBatchOneToManyAggregate, SQLBatchOneToManyReference, SQLBatchOneToOne, SQLManyToManyReference, SQLOneToManyAggregate, SQLOneToManyReference, SQLOneToOne

public interface FieldAccessIF
INTERNAL: Interface for reading and updating object field values. The actual object field accessed by the implementation is not exposed by the interface.
  • Method Details

    • load

      Object load(AccessRegistrarIF registrar, IdentityIF identity) throws Exception
      INTERNAL: Loads the field value for the given object identity. The specified access registrar will be notified about the value(s) read from the database.
      Returns:
      The value loaded for the specific field. Note that if the field is a reference field the identity will be returned, not the actual object. This is because the storage system does not deal with persistent object instances directly.
      Throws:
      IdentityNotFoundException - if the identity was not found.
      Exception
    • loadMultiple

      Object loadMultiple(AccessRegistrarIF registrar, Collection<IdentityIF> identities, IdentityIF current) throws Exception
      INTERNAL: Loads the field value for all the given object identities. The specified access registrar will be notified about the value(s) read from the database.
      Returns:
      The value loaded for the specific field for the current identity. Note that if the field is a reference field the identity will be returned, not the actual object. This is because the storage system does not deal with persistent object instances directly.
      Throws:
      IdentityNotFoundException - if the identity was not found.
      Exception
    • storeDirty

      void storeDirty(ObjectAccessIF oaccess, Object object) throws Exception
      INTERNAL: The object field is dirty and a call to this method should cause the field value to be updated. Note that the field access may also store other field values if it decides to do so. After the field value(s) has been updated the dirty flag(s) should be set to false.
      Throws:
      Exception
    • clear

      void clear(IdentityIF identity) throws Exception
      INTERNAL: Clears the field value for the given object identity. This method is only applicable for 1:M and M:M fields.
      Throws:
      Exception