com.im.df.api 5.9

com.im.df.api.ddl
Interface DFSchema

All Superinterfaces:
DFItem, DFScriptParent, PropertiesEditingConfigurable

public interface DFSchema
extends DFScriptParent

The definition of an set of DFEntitys, DFRelationships and DFDataTrees. This can be thought of as an object oriented reflection of the underlying relational database schema (but not just this). This class provides containers for all these types of DFItems and also is a starting point to all DML objects (Data providers).


Nested Class Summary
 
Nested classes/interfaces inherited from interface com.im.df.api.ddl.DFItem
DFItem.Handle<T extends DFItem>
 
Nested classes/interfaces inherited from interface com.im.df.api.support.PropertiesEditingConfigurable
PropertiesEditingConfigurable.Extra
 
Field Summary
static String PROP_DATA_TREES
           
static String PROP_ENTITIES
           
static String PROP_RELATIONSHIPS
           
 
Fields inherited from interface com.im.df.api.ddl.DFScriptParent
PROP_SCRIPTS
 
Fields inherited from interface com.im.df.api.ddl.DFItem
PROP_CAPABILITIES, PROP_DESCRIPTION, PROP_ID, PROP_NAME, PROP_TYPE, PROP_VALID
 
Method Summary
 DFSchemaDataProvider getDataProvider()
          Get the root object for all data manipulations
 DFContainer<DFDataTree> getDataTrees()
          Get the data trees container
 DFContainer<DFEntity> getEntities()
          Get the entities container
 DFLockable getLockable()
          Get lockable for all DDL operations except actions related to DFViews, DFQuerys and DFLists.
 DFContainer<DFRelationship> getRelationships()
          Get the relationships container
 DFSchemaProvider getSchemaProvider()
           
 DFLockable getUserLockable()
          Get universal lockable for actions working with views (adding/removing/modifying), queries and lists - it means all user's own artefacts (DFUserItem).
 DFLockable getUserLockable(DFUserItem item)
          Get the lockable for user specific item.
 
Methods inherited from interface com.im.df.api.ddl.DFScriptParent
getSchema, getScripts
 
Methods inherited from interface com.im.df.api.ddl.DFItem
addPropertyChangeListener, getCapabilities, getDescription, getHandle, getId, getName, getType, isValid, removePropertyChangeListener, setDescription, setName
 
Methods inherited from interface com.im.df.api.support.PropertiesEditingConfigurable
isPropertyEditable
 

Field Detail

PROP_ENTITIES

static final String PROP_ENTITIES
See Also:
Constant Field Values

PROP_RELATIONSHIPS

static final String PROP_RELATIONSHIPS
See Also:
Constant Field Values

PROP_DATA_TREES

static final String PROP_DATA_TREES
See Also:
Constant Field Values
Method Detail

getEntities

DFContainer<DFEntity> getEntities()
Get the entities container

Returns:
The entities container

getRelationships

DFContainer<DFRelationship> getRelationships()
Get the relationships container

Returns:
The relationships container

getDataTrees

DFContainer<DFDataTree> getDataTrees()
Get the data trees container

Returns:
The data trees container

getDataProvider

DFSchemaDataProvider getDataProvider()
Get the root object for all data manipulations

Returns:
The root object

getSchemaProvider

DFSchemaProvider getSchemaProvider()
Returns:
The factory class which was responsible for creating this object (DFSchema). The returned schema provider can be used for example for closing connection, for registering listener to status changes etc.

getLockable

DFLockable getLockable()
Get lockable for all DDL operations except actions related to DFViews, DFQuerys and DFLists. DDL objects are shared among users, but views, lists and queries are always owned by a single user - to modify these objects (add new/remove/modify) use getUserLockable() instead.

Returns:
The lockable

getUserLockable

DFLockable getUserLockable()
Get universal lockable for actions working with views (adding/removing/modifying), queries and lists - it means all user's own artefacts (DFUserItem). This method is supposed to be used when DFItem is unknown - for example if you are going to add a new list, query or view. If you want to change existing user DFItem, then use (@link #getUserLockable(DFUserItem)) instead.

Returns:
The lockable for user specific objects

getUserLockable

DFLockable getUserLockable(DFUserItem item)
Get the lockable for user specific item. If the item is not owned by current user it's expected that you will get some lockable which is "locked forever" and you won't be able to modify the object.

Parameters:
item - The user specific item (@link DFUserItem)
Returns:
The lockable for user specific item

com.im.df.api 5.9