Interface SSIExternalResolver

All Known Implementing Classes:
SSIServletExternalResolver

public interface SSIExternalResolver
Interface used by SSIMediator to talk to the 'outside world' ( usually a servlet ).
  • Method Details

    • addVariableNames

      void addVariableNames(Collection<String> variableNames)
      Adds any external variables to the variableNames collection.
      Parameters:
      variableNames - the collection to add to
    • getVariableValue

      String getVariableValue(String name)
      Returns the value of the named variable, or null if not found.
      Parameters:
      name - of the variable
      Returns:
      the variable value
    • setVariableValue

      void setVariableValue(String name, String value)
      Set the named variable to the specified value. If value is null, then the variable will be removed ( ie. a call to getVariableValue will return null )
      Parameters:
      name - of the variable
      value - of the variable
    • getCurrentDate

      Date getCurrentDate()
      Returns the current date. This is useful for putting the SSI stuff in a regression test. Since you can make the current date a constant, it makes testing easier since the output won't change.
      Returns:
      the data
    • getFileSize

      long getFileSize(String path, boolean virtual) throws IOException
      Returns the size of the specified file in bytes.
      Parameters:
      path - the file path
      virtual - true for virtual (webapp-relative) path, false for physical path
      Returns:
      the file size in bytes
      Throws:
      IOException - if the file cannot be accessed
    • getFileLastModified

      long getFileLastModified(String path, boolean virtual) throws IOException
      Returns the last modified timestamp of the specified file.
      Parameters:
      path - the file path
      virtual - true for virtual (webapp-relative) path, false for physical path
      Returns:
      the last modified time in milliseconds
      Throws:
      IOException - if the file cannot be accessed
    • getFileText

      String getFileText(String path, boolean virtual) throws IOException
      Returns the text content of the specified file.
      Parameters:
      path - the file path
      virtual - true for virtual (webapp-relative) path, false for physical path
      Returns:
      the file content as a string
      Throws:
      IOException - if the file cannot be read
    • log

      void log(String message, Throwable throwable)
      Logs a message, optionally with an associated throwable.
      Parameters:
      message - the log message
      throwable - the associated throwable, or null