## org.biojava.utils.candy
Interface CandyFinder

All Superinterfaces:
  EventListener, PropertyChangeListener

    public interface CandyFinder

extends PropertyChangeListener

This interface is a main entry point to a set of controlled vocabularies.

The implementation is supposed to behave as a Java bean (usually an invisible bean unless it implements some additional GUI methods which are not defined in this interface).

Version:
  $Id: CandyFinder.java 2703 2003-06-01 08:42:29Z thomasd $
Author:
  Martin Senger, Matthew Pocock

Field Summary
`static String` `DEFAULT_FINDER_NAME` A default name of this (and any) finder.
`static String` `PROP_VOCABULARY` A property name.

Method Summary
`void` `connect()` It creates a connection to an object representing a vocabulary finder, or/and it makes all necessary initialization steps needed for further communication.
`void` `disconnect()` It closes connection with the finder object.
`CandyVocabulary[]` `getAllVocabularies()` It returns all available vocabularies.
`String[]` `getAllVocabularyNames()` It returns names of all vocabularies known to this vocabulary finder.
`String` `getFinderName()` It returns a name of this vocabulary finder.
`int` `getNumCount()` It returns the number of available vocabularies.
`CandyVocabulary` `getVocabularyByName(String name)` It returns a selected vocabulary.
`boolean` `isReady()` It checks if a vocabulary finder object is available.

Methods inherited from interface java.beans.PropertyChangeListener
`propertyChange`

Field Detail

### DEFAULT_FINDER_NAME

    static final String DEFAULT_FINDER_NAME

  A default name of this (and any) finder. It is used when no other name was given by the finder implementation.

  See Also:
    Constant Field Values

### PROP_VOCABULARY

    static final String PROP_VOCABULARY

  A property name.

  Its value is of type `CandyVocabulary`. It this property is set a given vocabulary becomes part of this finder.

  See Also:
    Constant Field Values

Method Detail

### connect

    void connect()
                 throws CandyException

  It creates a connection to an object representing a vocabulary finder, or/and it makes all necessary initialization steps needed for further communication.

  However, there should be no need to call this method explicitly, the other methods should do it automatically before they need to use the finder.

  Throws:
    `CandyException` - if the connection/initialization cannot be established

### isReady

    boolean isReady()

  It checks if a vocabulary finder object is available. The semantic of availabledepends on the implementation.

### disconnect

    void disconnect()

  It closes connection with the finder object. Implementations may choose to use this method for freeing resources.

### getAllVocabularyNames

    String[] getAllVocabularyNames()
                                   throws CandyException

  It returns names of all vocabularies known to this vocabulary finder. Any of the returned names can be later used in the method `getVocabularyByName`.

  Returns:
    a list of available vocabulary names
  Throws:
    `CandyException` - if the finder fails to communicate with its vocabularies

### getVocabularyByName

    CandyVocabulary getVocabularyByName(String name)
                                        throws CandyException

  It returns a selected vocabulary.

  Parameters:
    `name` - a name of a vocabulary to be returned
  Returns:
    a selected vocabulary
  Throws:
    `CandyException` - when the vocabulary cannot be found (likely the given name is wrong)
  See Also:
    `getAllVocabularyNames()`

### getAllVocabularies

    CandyVocabulary[] getAllVocabularies()
                                         throws CandyException

  It returns all available vocabularies.

  Returns:
    all available vocabularies
  Throws:
    `CandyException` - if the finder fails to communicate with its vocabularies

### getNumCount

    int getNumCount()
                    throws CandyException

  It returns the number of available vocabularies.

  Throws:
    `CandyException` - if the finder fails to communicate with its vocabularies

### getFinderName

    String getFinderName()
                         throws CandyException

  It returns a name of this vocabulary finder.

  Throws:
    `CandyException` - if the finder fails to return its name