/**
* Creates a new TidyFilter using the passed in Reader for instantiation.
*
* @param reader A Reader object providing the underlying stream.
* Must not be <code>null</code>.
*
* @return a new filter based on this configuration, but filtering
* the specified reader
*/
public function chain(Reader $reader)
{
$newFilter = new TidyFilter($reader);
$newFilter->setConfigParameters($this->configParameters);
$newFilter->setEncoding($this->encoding);
$newFilter->setProject($this->getProject());
return $newFilter;
}