org.apache.catalina.ssi

## Class SSIMediator

- java.lang.Object
- - org.apache.catalina.ssi.SSIMediator

    public class SSIMediator
    extends Object

Allows the different SSICommand implementations to share data/talk to each other

Author:
  Bip Thelin, Amy Roh, Paul Speed, Dan Sandberg, David Becker

### Field Summary

Fields
`protected String` `className`
`protected org.apache.catalina.ssi.SSIConditionalState` `conditionalState`
`protected String` `configErrMsg`
`protected String` `configSizeFmt`
`protected String` `configTimeFmt`
`protected int` `debug`
`protected static String` `DEFAULT_CONFIG_ERR_MSG`
`protected static String` `DEFAULT_CONFIG_SIZE_FMT`
`protected static String` `DEFAULT_CONFIG_TIME_FMT`
`protected long` `lastModifiedDate`
`protected SSIExternalResolver` `ssiExternalResolver`
`protected Strftime` `strftime`
`protected static URLEncoder` `urlEncoder`

### Constructor Summary

Constructors
Constructor and Description
`SSIMediator(SSIExternalResolver ssiExternalResolver, long lastModifiedDate, int debug)`

### Method Summary

Methods
`protected String` `encode(String value, String encoding)`
`protected String` `formatDate(Date date, TimeZone timeZone)`
`org.apache.catalina.ssi.SSIConditionalState` `getConditionalState()`
`String` `getConfigErrMsg()`
`String` `getConfigSizeFmt()`
`String` `getConfigTimeFmt()`
`long` `getFileLastModified(String path, boolean virtual)`
`long` `getFileSize(String path, boolean virtual)`
`String` `getFileText(String path, boolean virtual)`
`Collection<String>` `getVariableNames()`
`String` `getVariableValue(String variableName)`
`String` `getVariableValue(String variableName, String encoding)`
`protected boolean` `isNameReserved(String name)`
`void` `log(String message)`
`void` `log(String message, Throwable throwable)`
`void` `setConfigErrMsg(String configErrMsg)`
`void` `setConfigSizeFmt(String configSizeFmt)`
`void` `setConfigTimeFmt(String configTimeFmt)`
`void` `setConfigTimeFmt(String configTimeFmt, boolean fromConstructor)`
`protected void` `setDateVariables(boolean fromConstructor)`
`void` `setVariableValue(String variableName, String variableValue)`
`String` `substituteVariables(String val)` Applies variable substitution to the specified String and returns the new resolved string.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### DEFAULT_CONFIG_ERR_MSG

    protected static final String DEFAULT_CONFIG_ERR_MSG

See Also:
  Constant Field Values

#### DEFAULT_CONFIG_TIME_FMT

    protected static final String DEFAULT_CONFIG_TIME_FMT

See Also:
  Constant Field Values

#### DEFAULT_CONFIG_SIZE_FMT

    protected static final String DEFAULT_CONFIG_SIZE_FMT

See Also:
  Constant Field Values

#### urlEncoder

    protected static URLEncoder urlEncoder

#### configErrMsg

    protected String configErrMsg

#### configTimeFmt

    protected String configTimeFmt

#### configSizeFmt

    protected String configSizeFmt

#### className

    protected String className

#### ssiExternalResolver

    protected SSIExternalResolver ssiExternalResolver

#### lastModifiedDate

    protected long lastModifiedDate

#### debug

    protected int debug

#### strftime

    protected Strftime strftime

#### conditionalState

    protected org.apache.catalina.ssi.SSIConditionalState conditionalState

### Constructor Detail

#### SSIMediator

    public SSIMediator(SSIExternalResolver ssiExternalResolver,
               long lastModifiedDate,
               int debug)

### Method Detail

#### setConfigErrMsg

    public void setConfigErrMsg(String configErrMsg)

#### setConfigTimeFmt

    public void setConfigTimeFmt(String configTimeFmt)

#### setConfigTimeFmt

    public void setConfigTimeFmt(String configTimeFmt,
                        boolean fromConstructor)

#### setConfigSizeFmt

    public void setConfigSizeFmt(String configSizeFmt)

#### getConfigErrMsg

    public String getConfigErrMsg()

#### getConfigTimeFmt

    public String getConfigTimeFmt()

#### getConfigSizeFmt

    public String getConfigSizeFmt()

#### getConditionalState

    public org.apache.catalina.ssi.SSIConditionalState getConditionalState()

#### getVariableNames

    public Collection<String> getVariableNames()

#### getFileSize

    public long getFileSize(String path,
                   boolean virtual)
                     throws IOException

Throws:
  `IOException`

#### getFileLastModified

    public long getFileLastModified(String path,
                           boolean virtual)
                             throws IOException

Throws:
  `IOException`

#### getFileText

    public String getFileText(String path,
                     boolean virtual)
                       throws IOException

Throws:
  `IOException`

#### isNameReserved

    protected boolean isNameReserved(String name)

#### getVariableValue

    public String getVariableValue(String variableName)

#### setVariableValue

    public void setVariableValue(String variableName,
                        String variableValue)

#### getVariableValue

    public String getVariableValue(String variableName,
                          String encoding)

#### substituteVariables

    public String substituteVariables(String val)

Applies variable substitution to the specified String and returns the new resolved string.

#### formatDate

    protected String formatDate(Date date,
                    TimeZone timeZone)

#### encode

    protected String encode(String value,
                String encoding)

#### log

    public void log(String message)

#### log

    public void log(String message,
           Throwable throwable)

#### setDateVariables

    protected void setDateVariables(boolean fromConstructor)