Data Request Broker
2-3-release

fr.gael.drb
Interface DrbUpdateImpl

All Superinterfaces:
DrbFactoryImpl
All Known Implementing Classes:
XmlFactory

public interface DrbUpdateImpl
extends DrbFactoryImpl

Common interface for Node factory implementations. All the classes implementing this interface can be used by the DrbFactory class. As a summary, the "Data Request Broker" (DRB) implementations are packages that break down a specific data resource (e.g. an XML document, an HTML file, a Zip archive, a database, etc.) into a tree of DrbNode instances.

As an example, an implementation may handle file systems, breaking down the hard disk devices into directories and regular files. Another one may provide nodes corresponding to the tables and records of a database.

The factory implementations are supposed to be used by the DrbFactory class and not outside. It may however be useful to create DrbNodes directly from a specific implementation disregarding the DrbFactory abstract level. It is therefore recommended to be careful in such situation.

Here are some examples of direct use of this interface to open DrbNodes from a path, maybe with an existing context. The following examples are not supposed to work with existing implementations but intends to provides an overview of the DrbFactoryImpl interface. Report to the implementations specific documentations for an accurate description of their use:


Method Summary
 void put(DrbNode input, DrbNode base_node)
          Opens the node from an existing node.
 void put(DrbNode input, URL uri)
          Put a node at the given path.
 void put(DrbNode input, URL uri, DrbNode base_node)
          Opens the node matching a given URI from an existing node.
 
Methods inherited from interface fr.gael.drb.DrbFactoryImpl
getIdentifier, getName, open, open, open
 

Method Detail

put

void put(DrbNode input,
         URL uri)
Put a node at the given path. This operation creates and returns a DrbNode corresponding to the given "Uniform Resource Identifier" (URI). Because URL class provided by java.net package supports the URI specifications, it has been used has URI parameter. The implementation is supposed to be able to handle the URI with a default or absolute context.


put

void put(DrbNode input,
         DrbNode base_node)
Opens the node from an existing node. This operation creates and returns a DrbNode using an existing node as base or context. The input DrbNode has to be used as base of the creation. If the implementation is not able to handle any input node, it shall always return null. The reference to the input shall not be null.

Parameters:
input - An input node
base_node - The input node to be used as context or base. This parameter shall not be null.

put

void put(DrbNode input,
         URL uri,
         DrbNode base_node)
Opens the node matching a given URI from an existing node. This operation creates and returns a DrbNode corresponding to the given "Uniform Resource Identifier" (URI) using an existing node as base or context. Because URL class provided by java.net package supports the URI specifications, it has been used has URI parameter. The input DrbNode has to be used as base of the creation. If the implementation is not able to handle any input node, it shall always return null even if it is able to use the passed URI standalone. If the reference to the URI is null the operation works as the open(DrbNode baseNode). Similary, if the URI reference is null, the operation works as the open(URL uri).
Important note
The implementation shall return a reference to a DrbNode corresponding to the entire URI AND using the input node. They shall return a null reference in any other case.

Parameters:
input - An input node
uri - The "Uniform Resource Identifier" (URI) to be handled.
base_node - The input node to be used as context or base.

Data Request Broker - DRB API®
2-3-release

Copyright© 2001-2009 GAEL Consultant. All rights reserved. Use is subject to license terms .