public class LocalEntityGraph extends EntityGraph
dataModel, DEPENDENCY, ENTITY, ENTITY_GRAPH, ENTITY_SET_ELEMENT, executionContext, graphID, importFilterManager, inDeleteMode, isTruncated| Modifier and Type | Method and Description |
|---|---|
void |
addDependencies(Table from,
java.lang.String fromAlias,
Table to,
java.lang.String toAlias,
java.lang.String condition,
int aggregationId,
int dependencyId,
boolean isAssociationReversed)
Adds dependencies.
|
long |
addEntities(Table table,
java.lang.String condition,
int today)
Adds entities to the graph.
|
long |
addEntities(Table table,
java.lang.String condition,
int today,
SubjectLimitDefinition limitDefinition,
boolean joinWithEntity)
Adds limited number of entities to the graph.
|
void |
close()
Closes the graph.
|
EntityGraph |
copy(int newGraphID,
Session _unused)
Copies an entity-graph.
|
long |
countEntities(Table table)
Counts the entities of a given table in this graph.
|
static LocalEntityGraph |
create(DataModel dataModel,
int graphID,
Session remoteSession,
ExecutionContext executionContext)
Creates a new entity-graph.
|
EntityGraph |
createNewGraph()
Creates a new entity-graph of same type and session.
|
void |
delete(boolean forced)
Deletes the graph.
|
long |
deleteEntities(Table table)
Deletes all entities from a given table.
|
void |
deleteIndependentEntities(Table table)
Deletes all entities which are marked as independent.
|
int |
getAge()
Gets the age of the graph.
|
DataModel |
getDatamodel() |
java.util.Set<java.lang.Integer> |
getDistinctDependencyIDs()
Gets distinct association-ids of all edged.
|
Session |
getSession()
Gets the session.
|
long |
getSize()
Gets the number of entities in the graph.
|
Session |
getTargetSession() |
long |
getTotalRowcount()
Gets total row-count.
|
PrimaryKey |
getUniversalPrimaryKey()
Gets the universal primary key.
|
void |
markDependentEntitiesAsTraversed(Association association,
java.sql.ResultSet resultSet,
java.sql.ResultSetMetaData resultSetMetaData,
java.util.Map<java.lang.String,java.lang.Integer> typeCache)
Marks all entities which depends on given entity as traversed.
|
void |
markIndependentEntities(Table table)
Marks all entities of a given table which don't dependent on other entities,
s.t. they can be read and deleted.
|
void |
markRoots(Table table)
Marks all rows which are not target of a dependency.
|
void |
readDependentEntities(Table table,
Association association,
java.sql.ResultSet resultSet,
java.sql.ResultSetMetaData resultSetMetaData,
Session.ResultSetReader reader,
java.util.Map<java.lang.String,java.lang.Integer> theTypeCache,
java.lang.String selectionSchema,
java.lang.String originalPKAliasPrefix)
Reads all entities which depends on given entity.
|
void |
readEntities(Table table,
boolean orderByPK)
Reads all entities of a given table.
|
void |
readMarkedEntities(Table table,
boolean orderByPK)
Reads all entities of a given table which are marked as independent or as roots.
|
void |
readMarkedEntities(Table table,
Session.ResultSetReader reader,
java.lang.String selectionSchema,
java.lang.String originalPKAliasPrefix,
boolean orderByPK)
Reads all entities of a given table which are marked as independent or as roots.
|
void |
readNonTraversedDependencies(Table table,
Session.ResultSetReader reader)
Reads all non-traversed dependencies.
|
long |
readUnfilteredEntityColumns(Table table,
java.util.List<Column> columns,
Session.ResultSetReader reader)
Reads some columns of all entities of a given table without using filters.
|
long |
removeAssociatedDestinations(Association association,
boolean deletedEntitiesAreMarked,
java.util.Set<Table> allTables)
Removes all entities from this graph which are associated with an entity
outside the graph.
|
void |
removeReflexiveDependencies(Table table)
Removes all reflexive dependencies of given table.
|
long |
resolveAssociation(Table table,
Association association,
EntityGraph otherGraph,
EntityGraph universum,
boolean forDelete)
Resolves an association.
|
long |
resolveAssociation(Table table,
Association association,
int today)
Resolves an association.
|
void |
setAge(int age)
Sets the age of the graph.
|
void |
setBirthdayOfSubject(int birthdayOfSubject)
Sets birthday of subject rows.
|
void |
shutDown()
Shuts down statement-executor.
|
void |
updateEntities(Table table,
java.util.Set<Column> columns,
java.io.OutputStreamWriter scriptFileWriter,
DBMS targetConfiguration,
boolean inSourceSchema,
java.lang.String reason)
Updates columns of a table.
|
addExportedCount, checkExist, copy, createUniqueGraphID, delete, deleteRows, dmlTableReference, dropMappingTables, fillAndWriteMappingTables, getExportedCount, getImportFilterManager, getSelectionClause, getSize, getTransformerFactory, incLobCount, removeDependencies, setDeleteMode, setImportFilterManager, setTransformerFactory, truncate, typeNamepublic void close()
throws java.sql.SQLException
close in class EntityGraphjava.sql.SQLExceptionpublic void setBirthdayOfSubject(int birthdayOfSubject)
setBirthdayOfSubject in class EntityGraphbirthdayOfSubject - birthday of subject rowspublic static LocalEntityGraph create(DataModel dataModel, int graphID, Session remoteSession, ExecutionContext executionContext) throws java.io.IOException, java.sql.SQLException
graphID - the unique ID of the graphremoteSession - for executing SQL-Statementsjava.io.IOExceptionjava.sql.SQLExceptionpublic EntityGraph copy(int newGraphID, Session _unused) throws java.sql.SQLException
copy in class EntityGraphnewGraphID - the unique ID of the new graph_unused - for executing SQL-Statementsjava.sql.SQLExceptionpublic EntityGraph createNewGraph() throws java.sql.SQLException
createNewGraph in class EntityGraphjava.sql.SQLExceptionpublic int getAge()
throws java.sql.SQLException
getAge in class EntityGraphjava.sql.SQLExceptionpublic void setAge(int age)
throws java.sql.SQLException
setAge in class EntityGraphage - the age of the graphjava.sql.SQLExceptionpublic long getSize()
throws java.sql.SQLException
getSize in class EntityGraphjava.sql.SQLExceptionpublic void delete(boolean forced)
delete in class EntityGraphforced - force deletion. if true, don't allow optimization.public long addEntities(Table table, java.lang.String condition, int today) throws java.sql.SQLException
addEntities in class EntityGraphtable - the tablecondition - the condition in SQL that the entities must fulfilltoday - the birthday of the new entitiesjava.sql.SQLExceptionpublic long addEntities(Table table, java.lang.String condition, int today, SubjectLimitDefinition limitDefinition, boolean joinWithEntity) throws java.sql.SQLException
addEntities in class EntityGraphtable - the tablecondition - the condition in SQL that the entities must fulfilltoday - the birthday of the new entitieslimitDefinition - limitjava.sql.SQLExceptionpublic long resolveAssociation(Table table, Association association, int today) throws java.sql.SQLException
resolveAssociation in class EntityGraphtable - the tableassociation - the association to resolvetoday - the birthday of the new entitiesjava.sql.SQLExceptionpublic long resolveAssociation(Table table, Association association, EntityGraph otherGraph, EntityGraph universum, boolean forDelete) throws java.sql.SQLException
resolveAssociation in class EntityGraphtable - the tableassociation - the association to resolvejava.sql.SQLExceptionpublic void addDependencies(Table from, java.lang.String fromAlias, Table to, java.lang.String toAlias, java.lang.String condition, int aggregationId, int dependencyId, boolean isAssociationReversed) throws java.sql.SQLException
addDependencies in class EntityGraphfrom - source of dependencyfromAlias - alias for from-tableto - destination of dependencytoAlias - alias for to-tablecondition - condition of dependencyaggregationId - id of aggregation association (for XML export), 0 if not applicabledependencyId - id of dependencyjava.sql.SQLExceptionpublic java.util.Set<java.lang.Integer> getDistinctDependencyIDs()
throws java.sql.SQLException
getDistinctDependencyIDs in class EntityGraphjava.sql.SQLExceptionpublic void markIndependentEntities(Table table) throws java.sql.SQLException
markIndependentEntities in class EntityGraphjava.sql.SQLExceptionpublic void markRoots(Table table) throws java.sql.SQLException
markRoots in class EntityGraphjava.sql.SQLExceptionpublic void readMarkedEntities(Table table, boolean orderByPK) throws java.sql.SQLException
readMarkedEntities in class EntityGraphtable - the tableorderByPK - if true, result will be ordered by primary keysjava.sql.SQLExceptionpublic void readMarkedEntities(Table table, Session.ResultSetReader reader, java.lang.String selectionSchema, java.lang.String originalPKAliasPrefix, boolean orderByPK) throws java.sql.SQLException
readMarkedEntities in class EntityGraphreader - for reading the result-settable - the tableorderByPK - if true, result will be ordered by primary keysjava.sql.SQLExceptionpublic void readEntities(Table table, boolean orderByPK) throws java.sql.SQLException
readEntities in class EntityGraphtable - the tableorderByPK - if true, result will be ordered by primary keysjava.sql.SQLExceptionpublic long readUnfilteredEntityColumns(Table table, java.util.List<Column> columns, Session.ResultSetReader reader) throws java.sql.SQLException
readUnfilteredEntityColumns in class EntityGraphtable - the tablecolumns - the columnsreader - to readjava.sql.SQLExceptionpublic void updateEntities(Table table, java.util.Set<Column> columns, java.io.OutputStreamWriter scriptFileWriter, DBMS targetConfiguration, boolean inSourceSchema, java.lang.String reason) throws java.sql.SQLException
updateEntities in class EntityGraphtable - the tablecolumns - the columns;inSourceSchema - if true, use source-schema-mapping, else use schema-mappingreason - to be written as commentjava.sql.SQLExceptionpublic void deleteIndependentEntities(Table table) throws java.sql.SQLException
deleteIndependentEntities in class EntityGraphjava.sql.SQLExceptionpublic long deleteEntities(Table table) throws java.sql.SQLException
deleteEntities in class EntityGraphjava.sql.SQLExceptionpublic long countEntities(Table table) throws java.sql.SQLException
countEntities in class EntityGraphtable - the tablejava.sql.SQLExceptionpublic long removeAssociatedDestinations(Association association, boolean deletedEntitiesAreMarked, java.util.Set<Table> allTables) throws java.sql.SQLException
removeAssociatedDestinations in class EntityGraphassociation - the associationdeletedEntitiesAreMarked - if true, consider entity as deleted if its birthday is negativeallTables - set of tables from which there are entities in Ejava.sql.SQLExceptionpublic void readDependentEntities(Table table, Association association, java.sql.ResultSet resultSet, java.sql.ResultSetMetaData resultSetMetaData, Session.ResultSetReader reader, java.util.Map<java.lang.String,java.lang.Integer> theTypeCache, java.lang.String selectionSchema, java.lang.String originalPKAliasPrefix) throws java.sql.SQLException
readDependentEntities in class EntityGraphtable - the table from which to read entitiesassociation - the dependencyresultSet - current row is given entityreader - reads the entitiesselectionSchema - the selection schemajava.sql.SQLExceptionpublic void markDependentEntitiesAsTraversed(Association association, java.sql.ResultSet resultSet, java.sql.ResultSetMetaData resultSetMetaData, java.util.Map<java.lang.String,java.lang.Integer> typeCache) throws java.sql.SQLException
markDependentEntitiesAsTraversed in class EntityGraphassociation - the dependencyresultSet - current row is given entityjava.sql.SQLExceptionpublic void readNonTraversedDependencies(Table table, Session.ResultSetReader reader) throws java.sql.SQLException
readNonTraversedDependencies in class EntityGraphtable - the source of dependencies to look forreader - reads the entitiesjava.sql.SQLExceptionpublic void removeReflexiveDependencies(Table table) throws java.sql.SQLException
removeReflexiveDependencies in class EntityGraphtable - the tablejava.sql.SQLExceptionpublic long getTotalRowcount()
getTotalRowcount in class EntityGraphpublic PrimaryKey getUniversalPrimaryKey()
getUniversalPrimaryKey in class EntityGraphpublic void shutDown()
throws java.sql.SQLException
shutDown in class EntityGraphjava.sql.SQLExceptionpublic Session getSession()
EntityGraphgetSession in class EntityGraphpublic DataModel getDatamodel()
getDatamodel in class EntityGraphpublic Session getTargetSession()
getTargetSession in class EntityGraph