Interface ORidBagDelegate

All Superinterfaces:
Iterable<OIdentifiable>, OAutoConvertToRecord, ODetachable, ORecordElement, ORecordLazyMultiValue, OSizeable, OTrackedMultiValue<OIdentifiable,OIdentifiable>
All Known Implementing Classes:
OEmbeddedRidBag, ORemoteTreeRidBag, OSBTreeRidBag

  • Method Details

    • addAll

      void addAll(Collection<OIdentifiable> values)
    • add

      void add(OIdentifiable identifiable)
    • remove

      void remove(OIdentifiable identifiable)
    • isEmpty

      boolean isEmpty()
    • getSerializedSize

      int getSerializedSize()
    • getSerializedSize

      int getSerializedSize(byte[] stream, int offset)
    • serialize

      int serialize(byte[] stream, int offset, UUID ownerUuid)
      Writes content of bag to stream.

      OwnerUuid is needed to notify db about changes of collection pointer if some happens during serialization.

      Parameters:
      stream - to write content
      offset - in stream where start to write content
      ownerUuid - id of delegate owner
      Returns:
      offset where content of stream is ended
    • deserialize

      int deserialize(byte[] stream, int offset)
    • requestDelete

      void requestDelete()
    • contains

      boolean contains(OIdentifiable identifiable)
      THIS IS VERY EXPENSIVE METHOD AND CAN NOT BE CALLED IN REMOTE STORAGE.
      Parameters:
      identifiable - Object to check.
      Returns:
      true if ridbag contains at leas one instance with the same rid as passed in identifiable.
    • setOwner

      void setOwner(ORecordElement owner)
    • getOwner

      ORecordElement getOwner()
      Specified by:
      getOwner in interface ORecordElement
      Returns:
      Returns record element which contains given one.
    • toString

      String toString()
      Overrides:
      toString in class Object
    • getChanges

    • setSize

      void setSize(int size)
    • getTracker

    • setTracker

    • setTransactionModified

      void setTransactionModified(boolean transactionModified)