#------------------------------------------------
# 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 array of log entry EntryData objects corresponding
  # to the passed path and maxEntries parms.
  def getAllLogEntries(path, maxEntries)
    raise "Store subclasses must implement getAllLogEntries"
  end

  # Returns an array of sidebar entry EntryData objects corresponding
  # to the passed path.
  def getAllSidebarEntries(path)
    raise "Store subclasses must implement getAllSidebarEntries"
  end

  # Returns an array of sidebar entry CategoryData objects corresponding
  # to the passed path.
  def getAllCategories(path)
    raise "Store subclasses must implement getAllCategories"
  end

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

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

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

