## visad.data.visad
Class VisADForm

    java.lang.Object
      visad.data.FormNode
          visad.data.Form
              visad.data.visad.VisADForm

All Implemented Interfaces:
  FormFileInformer

Direct Known Subclasses:
  VisADCachingForm, VisADSerialForm

public class VisADForm
extends Form
implements FormFileInformer

VisADForm is the VisAD data format adapter for binary visad.Data objects.

Field Summary

Fields inherited from class visad.data.Form
`mathType`

Constructor Summary
`VisADForm()` Read/write a VisAD Data object using Java serialization.
`VisADForm(boolean allowBinary)` If `allowBinary` is `true`, read/write a VisAD Data object in VisAD's binary file format. If `allowBinary` is `false`, read/write a VisAD Data object using Java serialization.

Method Summary
`void` `add(String id, Data data, boolean replace)` Add data to an existing data object.
`String[]` `getDefaultSuffixes()` Get default suffixes for files/URLs handeled by this form.
`FormNode` `getForms(Data data)` Return the data forms that are compatible with a data object.
`boolean` `isThisType(byte[] block)` Check to see if the block contains the magic number for this form.
`boolean` `isThisType(String name)` Check to see if the file name might be right for this form.
`static void` `main(String[] args)` run 'java visad.data.visad.VisADForm in_file out_file' to convert in_file to out_file in VisAD serialized data format
`DataImpl` `open(String id)` Open an existing data object.
`DataImpl` `open(URL url)` Open a data object specified as a URL.
`DataImpl` `readData(BinaryReader rdr)`
`DataImpl` `readSerial(InputStream inputStream)`
`void` `save(String id, Data data, boolean replace)` Save a `Data` object.
`void` `save(String id, Data data, boolean replace, boolean bigObject)` Save a `Data` object.

Methods inherited from class visad.data.Form
`getMathType`

Methods inherited from class visad.data.FormNode
`getName`

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

Constructor Detail

### VisADForm

    public VisADForm(boolean allowBinary)

  If `allowBinary` is `true`, read/write a VisAD Data object in VisAD's binary file format.
  If `allowBinary` is `false`, read/write a VisAD Data object using Java serialization.

Parameters:
  `allowBinary` - if `true` use VisAD's binary file format, otherwise use Java serialization.

### VisADForm

    public VisADForm()

  Read/write a VisAD Data object using Java serialization.

Method Detail

### isThisType

    public boolean isThisType(String name)

  Description copied from interface: `FormFileInformer`
  Check to see if the file name might be right for this form.

  Specified by:
    `isThisType` in interface `FormFileInformer`
  Parameters:
    `name` - name of the file
  Returns:
    true if the name is right for this type of form

### isThisType

    public boolean isThisType(byte[] block)

  Description copied from interface: `FormFileInformer`
  Check to see if the block contains the magic number for this form.

  Specified by:
    `isThisType` in interface `FormFileInformer`
  Parameters:
    `block` - block of bytes from file
  Returns:
    true if the magic number is right

### getDefaultSuffixes

    public String[] getDefaultSuffixes()

  Description copied from interface: `FormFileInformer`
  Get default suffixes for files/URLs handeled by this form.

  Specified by:
    `getDefaultSuffixes` in interface `FormFileInformer`
  Returns:
    array of suffixes

### add

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

  Description copied from class: `FormNode`
  Add data to an existing data object.

  Specified by:
    `add` in class `FormNode`
  Throws:
    `BadFormException`

### getForms

    public FormNode getForms(Data data)

  Description copied from class: `FormNode`
  Return the data forms that are compatible with a data object.

  Specified by:
    `getForms` in class `FormNode`

### open

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

  Description copied from class: `FormNode`
  Open an existing data object.

  Specified by:
    `open` in class `FormNode`
  Throws:
    `BadFormException`
    `IOException`
    `VisADException`

### open

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

  Description copied from class: `FormNode`
  Open a data object specified as a URL.

  Specified by:
    `open` in class `FormNode`
  Throws:
    `BadFormException`
    `IOException`
    `VisADException`

### readData

    public DataImpl readData(BinaryReader rdr)
                      throws IOException,
                             VisADException

  Throws:
    `IOException`
    `VisADException`

### readSerial

    public DataImpl readSerial(InputStream inputStream)
                        throws ClassNotFoundException,
                               IOException

  Throws:
    `ClassNotFoundException`
    `IOException`

### save

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

  Save a `Data` object.

  Specified by:
    `save` in class `FormNode`
  Parameters:
    `id` - file name
    `data` - `Data` object
    `replace` - `true` if any existing file should be overwritten
  Throws:
    `BadFormException`
    `IOException`
    `RemoteException`
    `VisADException`

### save

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

  Save a `Data` object.

  Parameters:
    `id` - file name
    `data` - `Data` object
    `replace` - `true` if any existing file should be overwritten
    `bigObject` - `true` if the `Data` object is larger than the computer's memory, in which case special measures will be taken to converse memory usage.
  Throws:
    `BadFormException`
    `IOException`
    `RemoteException`
    `VisADException`

### main

    public static void main(String[] args)
                     throws VisADException,
                            RemoteException,
                            IOException

  run 'java visad.data.visad.VisADForm in_file out_file' to convert in_file to out_file in VisAD serialized data format

  Throws:
    `VisADException`
    `RemoteException`
    `IOException`