Package org.apache.catalina.filters

## Class ExpiresFilter.XPrintWriter

- java.lang.Object
- - java.io.Writer
  - - java.io.PrintWriter
    - - org.apache.catalina.filters.ExpiresFilter.XPrintWriter

All Implemented Interfaces:
  `java.io.Closeable`, `java.io.Flushable`, `java.lang.Appendable`, `java.lang.AutoCloseable`

Enclosing class:
  ExpiresFilter

    public class ExpiresFilter.XPrintWriter
    extends java.io.PrintWriter

Wrapping extension of `PrintWriter` to trap the "Start Write Response Body" event.

### Field Summary

### Fields inherited from class java.io.Writer

`lock`

### Constructor Summary

Constructors
`XPrintWriter​(java.io.PrintWriter out, HttpServletRequest request, ExpiresFilter.XHttpServletResponse response)`

### Method Summary

All Methods Instance Methods Concrete Methods
`java.io.PrintWriter` `append​(char c)`
`java.io.PrintWriter` `append​(java.lang.CharSequence csq)`
`java.io.PrintWriter` `append​(java.lang.CharSequence csq, int start, int end)`
`void` `close()`
`void` `flush()`
`void` `print​(boolean b)`
`void` `print​(char c)`
`void` `print​(char[] s)`
`void` `print​(double d)`
`void` `print​(float f)`
`void` `print​(int i)`
`void` `print​(long l)`
`void` `print​(java.lang.Object obj)`
`void` `print​(java.lang.String s)`
`java.io.PrintWriter` `printf​(java.lang.String format, java.lang.Object... args)`
`java.io.PrintWriter` `printf​(java.util.Locale l, java.lang.String format, java.lang.Object... args)`
`void` `println()`
`void` `println​(boolean x)`
`void` `println​(char x)`
`void` `println​(char[] x)`
`void` `println​(double x)`
`void` `println​(float x)`
`void` `println​(int x)`
`void` `println​(long x)`
`void` `println​(java.lang.Object x)`
`void` `println​(java.lang.String x)`
`void` `write​(char[] buf)`
`void` `write​(char[] buf, int off, int len)`
`void` `write​(int c)`
`void` `write​(java.lang.String s)`
`void` `write​(java.lang.String s, int off, int len)`

### Methods inherited from class java.io.PrintWriter

`checkError, clearError, format, format, setError`

### Methods inherited from class java.io.Writer

`nullWriter`

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

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

### Constructor Detail

#### XPrintWriter

    public XPrintWriter​(java.io.PrintWriter out,
                        HttpServletRequest request,
                        ExpiresFilter.XHttpServletResponse response)

### Method Detail

#### append

    public java.io.PrintWriter append​(char c)

Specified by:
  `append` in interface `java.lang.Appendable`
Overrides:
  `append` in class `java.io.PrintWriter`

#### append

    public java.io.PrintWriter append​(java.lang.CharSequence csq)

Specified by:
  `append` in interface `java.lang.Appendable`
Overrides:
  `append` in class `java.io.PrintWriter`

#### append

    public java.io.PrintWriter append​(java.lang.CharSequence csq,
                                      int start,
                                      int end)

Specified by:
  `append` in interface `java.lang.Appendable`
Overrides:
  `append` in class `java.io.PrintWriter`

#### close

    public void close()

Specified by:
  `close` in interface `java.lang.AutoCloseable`
Specified by:
  `close` in interface `java.io.Closeable`
Overrides:
  `close` in class `java.io.PrintWriter`

#### flush

    public void flush()

Specified by:
  `flush` in interface `java.io.Flushable`
Overrides:
  `flush` in class `java.io.PrintWriter`

#### print

    public void print​(boolean b)

Overrides:
  `print` in class `java.io.PrintWriter`

#### print

    public void print​(char c)

Overrides:
  `print` in class `java.io.PrintWriter`

#### print

    public void print​(char[] s)

Overrides:
  `print` in class `java.io.PrintWriter`

#### print

    public void print​(double d)

Overrides:
  `print` in class `java.io.PrintWriter`

#### print

    public void print​(float f)

Overrides:
  `print` in class `java.io.PrintWriter`

#### print

    public void print​(int i)

Overrides:
  `print` in class `java.io.PrintWriter`

#### print

    public void print​(long l)

Overrides:
  `print` in class `java.io.PrintWriter`

#### print

    public void print​(java.lang.Object obj)

Overrides:
  `print` in class `java.io.PrintWriter`

#### print

    public void print​(java.lang.String s)

Overrides:
  `print` in class `java.io.PrintWriter`

#### printf

    public java.io.PrintWriter printf​(java.util.Locale l,
                                      java.lang.String format,
                                      java.lang.Object... args)

Overrides:
  `printf` in class `java.io.PrintWriter`

#### printf

    public java.io.PrintWriter printf​(java.lang.String format,
                                      java.lang.Object... args)

Overrides:
  `printf` in class `java.io.PrintWriter`

#### println

    public void println()

Overrides:
  `println` in class `java.io.PrintWriter`

#### println

    public void println​(boolean x)

Overrides:
  `println` in class `java.io.PrintWriter`

#### println

    public void println​(char x)

Overrides:
  `println` in class `java.io.PrintWriter`

#### println

    public void println​(char[] x)

Overrides:
  `println` in class `java.io.PrintWriter`

#### println

    public void println​(double x)

Overrides:
  `println` in class `java.io.PrintWriter`

#### println

    public void println​(float x)

Overrides:
  `println` in class `java.io.PrintWriter`

#### println

    public void println​(int x)

Overrides:
  `println` in class `java.io.PrintWriter`

#### println

    public void println​(long x)

Overrides:
  `println` in class `java.io.PrintWriter`

#### println

    public void println​(java.lang.Object x)

Overrides:
  `println` in class `java.io.PrintWriter`

#### println

    public void println​(java.lang.String x)

Overrides:
  `println` in class `java.io.PrintWriter`

#### write

    public void write​(char[] buf)

Overrides:
  `write` in class `java.io.PrintWriter`

#### write

    public void write​(char[] buf,
                      int off,
                      int len)

Overrides:
  `write` in class `java.io.PrintWriter`

#### write

    public void write​(int c)

Overrides:
  `write` in class `java.io.PrintWriter`

#### write

    public void write​(java.lang.String s)

Overrides:
  `write` in class `java.io.PrintWriter`

#### write

    public void write​(java.lang.String s,
                      int off,
                      int len)

Overrides:
  `write` in class `java.io.PrintWriter`