Interface MetaStore

All Known Implementing Classes:
XMLFileBasedMetaStore

public interface MetaStore
Interface for metastore implementations. The metastore is a simple storage place that can be used, as an example, for storing named configuration settings (e.g. general application settings, reusable database connections etc.).
Version:
$Revision: 11805 $
Author:
Mark Hall (mhall{[at]}pentaho{[dot]}com)
  • Method Details

    • listMetaStores

      Set<String> listMetaStores() throws IOException
      Get a list of all named meta stores
      Returns:
      a list of meta stores
      Throws:
      IOException - if a problem occurs
    • listMetaStoreEntries

      Set<String> listMetaStoreEntries(String storeName) throws IOException
      Get a list of all entries in a named store
      Parameters:
      storeName - the name of the store to get entries for
      Returns:
      a list of all entries in the named store
      Throws:
      IOException - if a problem occurs
    • listMetaStoreEntries

      Set<String> listMetaStoreEntries(String storeName, String prefix) throws IOException
      Get a list of all named entries starting with the given prefix
      Parameters:
      storeName - the name of the store to get entries for
      prefix - the prefix with which to search for entries
      Returns:
      a list of entries
      Throws:
      IOException - if a problem occurs
    • createStore

      void createStore(String storeName) throws IOException
      Create a named store
      Parameters:
      storeName - the name of the store to create
      Throws:
      IOException - if a problem occurs
    • getEntry

      Object getEntry(String storeName, String name, Class<?> clazz) throws IOException
      Get a named entry from the store
      Parameters:
      storeName - the name of the store to use
      name - the full name of the entry to retrieve
      clazz - the expected class of the entry when deserialized
      Returns:
      the deserialized entry or null if the name does not exist in the store
      Throws:
      IOException - if the deserialized entry does not match the expected class
    • storeEntry

      void storeEntry(String storeName, String name, Object toStore) throws IOException
      Store a named entry
      Parameters:
      storeName - the name of the store to use
      name - the full name of the entry to store
      toStore - a beans compliant object to store
      Throws:
      IOException - if a problem occurs