#------------------------------------------------
# Store - represents where we get our stuff 
# This is an "abstract class" that defines what
# a store must support in order to be pluggable
# with the rest of the system.
#------------------------------------------------
class Store
    
  # Returns an collection of log entry LogEntryData objects corresponding
  # to the passed query and maxEntries parms.
  def get_all_log_entries(query, maxEntries)
    raise "Store subclasses must implement 'get_all_log_entries'"
  end

  # Returns an collection of sidebar entry LogEntryData objects corresponding
  # to the passed query.
  def get_all_sidebar_entries(query)
    raise "Store subclasses must implement 'get_all_sidebar_entries'"
  end

  # Returns an collection of sidebar entry CategoryData objects corresponding
  # to the passed query.
  def get_all_categories()
    raise "Store subclasses must implement 'get_all_categories'"
  end

  # Returns the Template object configured for log entries.
  def get_entry_template
    raise "Store subclasses must implement 'get_entry_template'"
  end

  # Returns the Template object configured for sidebar entries.
  def get_sidebox_template
    raise "Store subclasses must implement 'get_sidebox_template'"
  end

  # Returns the Template object configured for the docment body.
  def get_body_template
    raise "Store subclasses must implement 'get_body_template'"
  end
  
end

