com.im.df.api 5.9

Package com.im.df.api.ddl

API Status: 1 - Stable

See:
          Description

Interface Summary
DFCapability All DDL capabilities must extend this interface.
DFContainer<E extends DFItem> Generic container for any DFItems list.
DFContainer.Extra<E extends DFItem> Extension of standard DFContainer interface.
DFDataTree Interface representing data tree.
DFDataTree.Edge This object represents an edge in datatree graph.
DFDataTree.Vertex The Vertex in data tree graph.
DFEntity The definition of an entity that contains fields.
DFField The definition of a field which has a type, a name etc.
DFItem The root item and super-interface of all core DDL items in DIF.
DFItem.Handle<T extends DFItem> Represents a handle-like identifier of the item.
DFList List of primary key values stored in the model.
DFQuery Persistent query definition in the system.
DFRelationship Represents a foreign key relationship.
DFRelationship.Direction Direction - the oriented relationship.
DFSchema The definition of an set of DFEntitys, DFRelationships and DFDataTrees.
DFScript Representation of the script.
DFScriptParent Parent item of the script.
DFUserItem The root item and super-interface of all user-specific DDL items in DIF.
DFView Interface representing view (visual window/component) presenting data of DFDataTree.
DFViewContent Interface representing content of view configuration.
 

Class Summary
DFDataTrees Common utilities related to DFDataTree.
DFEntities Common utilities related to DFEntity.
DFFields Utility methods for DFField.
DFItems  
DFSchemas Utility methods for DFSchema.
 

Enum Summary
DFField.Required Enumeration of required status for fields.
DFRelationship.Type Type of the relationship.
 

Package com.im.df.api.ddl Description

API Status: 1 - Stable

Defines the core parts of the DIF data model. Whilst based around the relational database model, the components defined here are generic and could equally apply to other sources of data such as files or web services. the classes in this package comprise the "definition" of the components, and, in the context of a relational database model, reflect the DDL aspects of SQL. See the com.im.df.api.dml package for how to work with data contained in these components (the DML aspects)

The DIF DDL implementation is suppposed to be executed in a single thread. It doesn't matter what thread it is, but you should use only one at any moment. If you are doing changes in model (using setter/create/remove methods of DFItem, all its subinterfaces, DFContainer, etc.) you must provide an instance of DFEnvironmentRW which contains lock and some feedback class (callback approach). Whole DDL hierarchy use the same DFLock except DFView operations which have own special lock. As many of model modification method calls can take some time, it is not recommended to call them from AWT thread. The preferred way is to use for example UIBackgroundRunnerRW which executes the DDL call on background and then invoke UI update method in AWT thread. Another advantage of this support class is that it solves the DDL single-thread problem for you.


com.im.df.api 5.9