## visad.data
Class FormNode

    java.lang.Object
      visad.data.FormNode

Direct Known Subclasses:
  Form, FormFamily

public abstract class FormNode
extends Object

A node in the data form hierarchy for the storage of persistent data. This class implements the "composite" design pattern; the node will actually be either a "Form" or a "FormFamily".

Constructor Summary
`FormNode(String name)` Construct a data-form node with the given name.

Method Summary
`abstract void` `add(String id, Data data, boolean replace)` Add data to an existing data object.
`abstract FormNode` `getForms(Data data)` Return the data forms that are compatible with a data object.
`String` `getName()` Return the name of this node.
`abstract DataImpl` `open(String id)` Open an existing data object.
`abstract DataImpl` `open(URL url)` Open a data object specified as a URL.
`abstract void` `save(String id, Data data, boolean replace)` Save a VisAD data object in this form.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### FormNode

    public FormNode(String name)

  Construct a data-form node with the given name.

Method Detail

### getName

    public String getName()

  Return the name of this node.

### save

    public abstract void save(String id,
                              Data data,
                              boolean replace)
                       throws BadFormException,
                              IOException,
                              RemoteException,
                              VisADException

  Save a VisAD data object in this form.

  Throws:
    `BadFormException`
    `IOException`
    `RemoteException`
    `VisADException`

### add

    public abstract void add(String id,
                             Data data,
                             boolean replace)
                      throws BadFormException

  Add data to an existing data object.

  Throws:
    `BadFormException`

### open

    public abstract DataImpl open(String id)
                           throws BadFormException,
                                  IOException,
                                  VisADException

  Open an existing data object.

  Throws:
    `BadFormException`
    `IOException`
    `VisADException`

### open

    public abstract DataImpl open(URL url)
                           throws BadFormException,
                                  VisADException,
                                  IOException

  Open a data object specified as a URL.

  Throws:
    `BadFormException`
    `VisADException`
    `IOException`

### getForms

    public abstract FormNode getForms(Data data)
                               throws VisADException,
                                      RemoteException,
                                      IOException

  Return the data forms that are compatible with a data object.

  Throws:
    `VisADException`
    `RemoteException`
    `IOException`