org.qi4j.index.sql.support.skeletons
Interface SQLDBState


public interface SQLDBState

The state-type interface containing some important database-related data, in order to create proper SQL statements in indexing (SQLIndexing), querying (SQLQuery) and parsing queries (SQLQueryParser), and application startup (SQLStartup.


Method Summary
 Property<Map<String,EntityTypeInfo>> entityTypeInfos()
          Information about each used entity type.
 Property<Map<String,Set<QualifiedName>>> entityUsedQNames()
          Information about all used qualified names in a certain entity type.
 Property<Map<String,Integer>> enumPKs()
           
 Property<Map<Class<?>,Integer>> javaTypes2SQLTypes()
          A mapping between java type and the ones in Types.
 Property<Map<QualifiedName,QNameInfo>> qNameInfos()
          Information about all used qualified names.
 Property<String> schemaName()
          The schema name where all the required tables are located.
 Property<Map<String,Long>> tablePKs()
          Information about next primary keys for all used tables.
 Property<Map<String,Integer>> usedClassesPKs()
          Primary keys of all used classes (of value composites) in all entity types.
 

Method Detail

schemaName

@Optional
Property<String> schemaName()
The schema name where all the required tables are located.

Returns:
The schema name where all the required tables are located.

qNameInfos

@Optional
Property<Map<QualifiedName,QNameInfo>> qNameInfos()
Information about all used qualified names.

Returns:
Information about all used qualified names.
See Also:
QNameInfo

entityUsedQNames

@Optional
Property<Map<String,Set<QualifiedName>>> entityUsedQNames()
Information about all used qualified names in a certain entity type. The interface name of entity type serves as the key.

Returns:
Information about all used qualified names in a certain entity type.

tablePKs

@Optional
Property<Map<String,Long>> tablePKs()
Information about next primary keys for all used tables. Table name is the key. Each primary key needs to be specifically kept cached like this, because it is quite damn hard, if not impossible, to use auto-generated keys with batch-updates (and batch-updates are very efficient when committing changed entity states to DB).

Returns:
Information about next primary keys for all used tables.

usedClassesPKs

@Optional
Property<Map<String,Integer>> usedClassesPKs()
Primary keys of all used classes (of value composites) in all entity types. Value composite type name (interface name) is the key.

Returns:
Primary keys of all used classes (of value composites) in all entity types.

entityTypeInfos

@Optional
Property<Map<String,EntityTypeInfo>> entityTypeInfos()
Information about each used entity type. Entity type name (interface name) is the key.

Returns:
Information about each used entity type.

javaTypes2SQLTypes

@Optional
Property<Map<Class<?>,Integer>> javaTypes2SQLTypes()
A mapping between java type and the ones in Types. The class of java type is the key.

Returns:
A mapping between java type and the ones in Types.

enumPKs

@Optional
Property<Map<String,Integer>> enumPKs()