|
Data Request Broker 2-3-release |
|||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES | |||||||||
See:
Description
| Interface Summary | |
|---|---|
| DrbAttribute | Generic attribute interface. |
| DrbAttributeList | Collection of attributes. |
| DrbFactoryImpl | Common interface for Node factory implementations. |
| DrbItem | Item interface. |
| DrbMutableNode | Mutable node interface. |
| DrbNode | Node interface. |
| DrbNodeList | Collection of nodes. |
| DrbNodesChangeListener | Interface for listening DRB node changes. |
| DrbNodesChangeProducer | Interface identifying any node change procucer. |
| DrbSequence | Collection of item. |
| DrbUpdateImpl | Common interface for Node factory implementations. |
| Class Summary | |
|---|---|
| DrbAbstractAttribute | Abstract attribute implementation. |
| DrbAbstractNode | This class provides a skeletal implementation of the DrbNode interface, to minimize the effort required to implement this interface. |
| DrbAbstractNodeList | This class provides a skeletal implementation of the DrbNodeList interface, to minimize the effort required to implement this interface. |
| DrbAbstractSequence | This class provides a skeletal implementation of the DrbSequence interface, to minimize the effort required to implement this interface. |
| DrbDefaultAttribute | Default attribute implementation. |
| DrbDefaultAttributeList | Generic implementation of DrbAttributeList. |
| DrbDefaultMutableNode | Simple mutable node implementation. |
| DrbDefaultNodeList | Generic implementation of DrbNodeList. |
| DrbDefaultNodesChangeProducer | A basic implementation of the DrbNodesChangeProducer. |
| DrbDefaultSequence | Generic implementation of DrbSequence. |
| DrbFactory | Node constructor. |
| DrbNodesChangeEvent | Event reporting node changes. |
DRB main package containing the main interfaces, default and abstract classes.
DRB API® relies on a unified data model to represent each data elements. This last presents the data file content as an ordered tree structure which elements are nodes. Each node is described similarly to XML standards by its name, its namespace, its attributes and its atomic value c.f. XML Data Model. In others words, a node is a named logical unit of a data source annotated with attributes. Complex nodes such as directories, ZIP entries or data records contain an ordered collection of children nodes. Simple nodes store a typed value such as a character string, a number, a date or an array of atomic values. For instance, in the following XML document, there is a node named "title", its namespace is "http://www.gael.fr", its single attribute is named "lang" and its atomic value "JAVA Threads":
<book xmlns="http://www.gael.fr" isbn="2-84177-079-6">
<title lang="en">JAVA Threads</title>
<author>Scott Oaks</author>
<author>Henry Wong</author>
<editor>O'Reilly</editor>
</book>
Moreover, thanks to its namespace, expressed according to W3C recommendations, a node can be located within the tree structure by its parent, its children or its siblings. In the previous XML document, the parent of the node called "title" is "book", it doesn't have any child, its sibling are "author" (2 nodes) and "editor".
The unified data model defines also a supplementary element called "Item" . Item encompasses the elements "Node", "Attribute" and "Value" in order to increases the abstraction level and allow global processing each of them. Finally, the model also defines the element called "Sequence" which is a collection of items. This collection may be for example the result of a query which need to be quantified. All those extra elements are descriptive tools which help to manipulate data files in many complex data accessing issues.
| Parameter/Type | Node | Attribute | Value |
| Namespace | x | x | x |
| Value | x | x | x |
| Name | x | x | |
| Attribute | x | ||
| Child | x |
The fr.gael.drb package contains the DrbNode,
DrbAttribute and DrbItem interfaces
which provide primary operations to retrieve information related to item
description such as name, namespace, attribute, value but also parent,
children or sibling. This set of interfaces browse data files and navigate
along the ancestor/descendant axis and preceding/following axis. It updates,
renames, replaces, removes, inserts or appends nodes. It provides direct
access to the children nodes, sibling nodes, parent node, root node, values
and attributes. The fr.gael.drb package also contains the DrbSequence, DrbNodeList and DrbAttributeList interfaces which provide primary operations to
read, remove, counts items within a list.
DRB API® relies on implementations to build the data tree defined before.
Each implementation access the data file content for a specific data format.
The implementation usually wraps an existing access library which allows to
extract information for such format. The fr.gael.drb package contains
DrbFactoryImpl interface which provide all primary
operations required to retrieve such information and converse accordingly to
the unified data model.
The fr.gael.drb package also contains DrbFactory
class which trigs operations which activate the appropriate implementation by
calling the appropriate implementation packages. It is able to build the tree
structure of any file as long its extension is supported by DRB API®.
They can be viewed from the help command line:
java -jar [DRB_INSTALLATION_HOME]/lib/java/drb-[M]-[m]-[t].jar --help impl
|
Data Request Broker - DRB API® 2-3-release |
|||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES | |||||||||