.. java:import:: java.util LinkedList .. java:import:: java.util List .. java:import:: org.apache.shiro.subject Subject .. java:import:: org.caosdb.server.database BackendTransaction .. java:import:: org.caosdb.server.database.exceptions EntityDoesNotExistException .. java:import:: org.caosdb.server.datatype CollectionValue .. java:import:: org.caosdb.server.datatype IndexedSingleValue .. java:import:: org.caosdb.server.datatype ReferenceValue .. java:import:: org.caosdb.server.entity EntityID .. java:import:: org.caosdb.server.entity EntityInterface .. java:import:: org.caosdb.server.entity Message .. java:import:: org.caosdb.server.entity RetrieveEntity .. java:import:: org.caosdb.server.entity Role .. java:import:: org.caosdb.server.entity.container Container .. java:import:: org.caosdb.server.entity.wrapper Property .. java:import:: org.caosdb.server.permissions EntityPermission .. java:import:: org.caosdb.server.query Query .. java:import:: org.caosdb.server.query Query.Selection .. java:import:: org.caosdb.server.utils EntityStatus RetrieveFullEntityTransaction ============================= .. java:package:: org.caosdb.server.database.backend.transaction :noindex: .. java:type:: public class RetrieveFullEntityTransaction extends BackendTransaction Retrieve the full entity from the backend - with all parents, properties, file properties and so on. TODO: This class should rather be called FullEntityRetrieval or FullEntityRetrieveTransaction. When the entity which is to be retrieved has a defined list of \ :java:ref:`Query.Selection`\ which select properties from referenced entities, the referenced entities are retrieved as well. Otherwise, only the referenced id is retrieved and the entity stays rather flat. :author: Timm Fitschen Constructors ------------ RetrieveFullEntityTransaction ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. java:constructor:: @SuppressWarnings public RetrieveFullEntityTransaction(EntityInterface entity, Subject subject) :outertype: RetrieveFullEntityTransaction RetrieveFullEntityTransaction ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. java:constructor:: public RetrieveFullEntityTransaction(Container container, Subject subject) :outertype: RetrieveFullEntityTransaction RetrieveFullEntityTransaction ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. java:constructor:: public RetrieveFullEntityTransaction(EntityID id, Subject subject) :outertype: RetrieveFullEntityTransaction Methods ------- execute ^^^^^^^ .. java:method:: @Override public void execute() :outertype: RetrieveFullEntityTransaction getContainer ^^^^^^^^^^^^ .. java:method:: public Container getContainer() :outertype: RetrieveFullEntityTransaction getSubSelects ^^^^^^^^^^^^^ .. java:method:: public List getSubSelects(List selections, String select) :outertype: RetrieveFullEntityTransaction Return all non-null subselects of those selections which match the given select String. Effectively, this reduces the depth of the selections by one (and drops non-matching selections). :param selections: :param select: :return: A new list of Selections. retrieveFullEntitiesInContainer ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. java:method:: public void retrieveFullEntitiesInContainer(Container container) :outertype: RetrieveFullEntityTransaction Retrieve the entities in the container. :param container: retrieveFullEntity ^^^^^^^^^^^^^^^^^^ .. java:method:: public void retrieveFullEntity(EntityInterface e, List selections) :outertype: RetrieveFullEntityTransaction Retrieve a single full entity. If the selections are not empty, retrieve the referenced entities matching the 'selections' as well. This method is called recursively during the retrieval of the referenced entities. :param e: The entity. :param selections: retrieveSubEntities ^^^^^^^^^^^^^^^^^^^ .. java:method:: public void retrieveSubEntities(EntityInterface e, List selections) :outertype: RetrieveFullEntityTransaction Retrieve the Entities which match the selections and are referenced by the Entity 'e'. :param e: :param selections: