## org.biojava.bio.structure.server
Interface PDBInstallation

All Known Implementing Classes:
  FlatFileInstallation, MMCIFFileInstallation

    public interface PDBInstallation

an interface that defines different access methods to PDB installations. Installations can be Flat file based ones, database ones, Installations that download all files from the net, etc.

Author:
  Andreas Prlic

Method Summary
`void` `addPDBFilter(PDBFilter filter)` add a filter for PDB files.
`void` `clearFilters()` remove all filters, next time getAll is called, it will return all available PDBs
`List<PDBHeader>` `getAll()` get all PDBHeaders that pass the added Filters, if no filters have been added returns all available PDBs
`PDBHeader` `getPDBHeader(String pdbId)` get the PDB header for a single protein structure
`Structure` `getStructure(String pdbId)` request a structure by its PDB identifier
`boolean` `hasNext()` return if the iteration over all structures will return another structure
`Structure` `next()` iterate over all structures in this Installation that pass the provided filters and return the next one in the list.

Method Detail

### getAll

    List<PDBHeader> getAll()

  get all PDBHeaders that pass the added Filters, if no filters have been added returns all available PDBs

  Returns:
    a list of PDBHeader objects

### getPDBHeader

    PDBHeader getPDBHeader(String pdbId)

  get the PDB header for a single protein structure

  Parameters:
    `pdbId` -
  Returns:
    the PDB header object

### addPDBFilter

    void addPDBFilter(PDBFilter filter)

  add a filter for PDB files. THis can be used to request, e.g. all X-ray structures, or all structures with a given resolution, all proteins with a certain function, etc.

  Parameters:
    `filter` - the filter to apply when getAll is being called.
  See Also:
    `getAll()`

### clearFilters

    void clearFilters()

  remove all filters, next time getAll is called, it will return all available PDBs

### getStructure

    Structure getStructure(String pdbId)

  request a structure by its PDB identifier

  Parameters:
    `pdbId` -
  Returns:
    the structure for the pdbId

### next

    Structure next()

  iterate over all structures in this Installation that pass the provided filters and return the next one in the list.

  Returns:
    the next structure

### hasNext

    boolean hasNext()

  return if the iteration over all structures will return another structure

  Returns:
    true if there is another structure that has not been iterated over yet