Filter which includes only those lines that contain all the user-specified strings.

Example:

Or:

This will include only those lines that contain

    foo

and

    bar

.

author | Yannick Lecaillez
author | Hans Lellelid
version | $Id$
see | \global\PhingFilterReader
package | phing.filters
copyright | 2003 seasonfive. All rights reserved

### Methods

## Constructor used by Phing's introspection mechanism.

    __construct(\Reader $in)

Inherited

The original filter reader is only used for chaining purposes, never for filtering purposes (and indeed it would be useless for filtering purposes, as it has no real data to filter). ChainedReaderHelper uses this placeholder instance to create a chain of real filters.

inherited_from | \BaseFilterReader::__construct()
inherited_from | \BaseParamFilterReader::__construct()

### Parameters

#### $in

`\Reader`

## Creates a new LineContains using the passed in Reader for instantiation.

    chain(\Reader $reader) : object

### Parameters

#### $reader

`object`

A Reader object providing the underlying stream. Must not be `null`.

### Returns

`object`A new filter based on this configuration, but filtering the specified reader

## Close stream.

    close()

Inherited

inherited_from | \FilterReader::close()
inherited_from | \BaseFilterReader::close()
inherited_from | \BaseParamFilterReader::close()

### Exceptions

`\IOException` | if there is an error closing stream

## Adds a <code>contains</code> nested element.

    createContains() : \Contains

### Returns

`\Contains`The `contains` element added. Must not be `null`.

## Returns whether the end of file has been reached with input stream.

    eof() : boolean

Inherited

inherited_from | \BaseFilterReader::eof()
inherited_from | \BaseParamFilterReader::eof()

### Returns

`boolean`

## Returns the vector of words which must be contained within a line read from the original stream in order for it to match this filter.

    getContains() : array

### Returns

`array`The array of words which must be contained within a line read from the original stream in order for it to match this filter. The returned object is "live" - in other words, changes made to the returned object are mirrored in the filter.

## Returns the initialized status.

    getInitialized() : boolean

Inherited

inherited_from | \BaseFilterReader::getInitialized()
inherited_from | \BaseParamFilterReader::getInitialized()

### Returns

`boolean`whether or not the filter is initialized

## getParameters()

    getParameters()

Inherited

inherited_from | \BaseParamFilterReader::getParameters()

## Returns the project this filter is part of.

    getProject() : object

Inherited

inherited_from | \BaseFilterReader::getProject()
inherited_from | \BaseParamFilterReader::getProject()

### Returns

`object`The project this filter is part of

## Returns the filename, url, etc.

    getResource() : string

Inherited

that is being read from. This is critical for, e.g., ExpatParser's ability to know the filename that is throwing an ExpatParserException, etc.

inherited_from | \FilterReader::getResource()
inherited_from | \BaseFilterReader::getResource()
inherited_from | \BaseParamFilterReader::getResource()

### Returns

`string`

## Convenience method to support logging in filters.

    log(string $msg, int $level)

Inherited

inherited_from | \BaseFilterReader::log()
inherited_from | \BaseParamFilterReader::log()

### Parameters

#### $msg

`string`

Message to log.

#### $level

`int`

Priority level.

## If supported, places a "marker" (like a bookmark) at current stream position.

    mark()

Inherited

A subsequent call to reset() will move stream position back to last marker (if supported).

inherited_from | \Reader::mark()
inherited_from | \FilterReader::mark()
inherited_from | \BaseFilterReader::mark()
inherited_from | \BaseParamFilterReader::mark()

## Whether marking is supported.

    markSupported() : boolean

Inherited

inherited_from | \Reader::markSupported()
inherited_from | \FilterReader::markSupported()
inherited_from | \BaseFilterReader::markSupported()
inherited_from | \BaseParamFilterReader::markSupported()

### Returns

`boolean`

## Returns all lines in a buffer that contain specified strings.

    read(\off $len) : mixed

FIXME: Clean up this function signature, as it a) params aren't being used and b) it doesn't make much sense.

### Parameters

#### $len

`\off`

Offset at which to start storing characters.

### Exceptions

`\IOException` | If an I/O error occurs

### Returns

`mixed`buffer, -1 on EOF

## [Deprecated.

    readChar() : \the

For reference only, used to be read() method.] Returns the next character in the filtered stream, only including lines from the original stream which contain all of the specified words.

exception | IOException if the underlying stream throws an IOException during reading

### Returns

`\the`next character in the resulting stream, or -1 if the end of the resulting stream has been reached

## Reads a line of text ending with '\n' (or until the end of the stream).

    readLine() : \the

Inherited

The returned String retains the '\n'.

inherited_from | \BaseFilterReader::readLine()
inherited_from | \BaseParamFilterReader::readLine()

### Exceptions

`\IOException` | if the underlying reader throws one during reading

### Returns

`\the`line read, or `null` if the end of the stream has already been reached

## Is stream ready for reading.

    ready() : boolean

Inherited

inherited_from | \Reader::ready()
inherited_from | \FilterReader::ready()
inherited_from | \BaseFilterReader::ready()
inherited_from | \BaseParamFilterReader::ready()

### Returns

`boolean`

## Reset the current position in stream to beginning or last mark (if supported).

    reset()

Inherited

inherited_from | \FilterReader::reset()
inherited_from | \BaseFilterReader::reset()
inherited_from | \BaseParamFilterReader::reset()

## Sets the array of words which must be contained within a line read from the original stream in order for it to match this filter.

    setContains(array $contains)

### Parameters

#### $contains

`array`

An array of words which must be contained within a line in order for it to match in this filter. Must not be `null`.

## Sets the initialized status.

    setInitialized(boolean $initialized)

Inherited

inherited_from | \BaseFilterReader::setInitialized()
inherited_from | \BaseParamFilterReader::setInitialized()

### Parameters

#### $initialized

`boolean`

Whether or not the filter is initialized.

## setParameters()

    setParameters($parameters)

Inherited

inherited_from | \BaseParamFilterReader::setParameters()

### Parameters

#### $parameters

## Sets the project to work with.

    setProject(\Project $project)

Inherited

inherited_from | \BaseFilterReader::setProject()
inherited_from | \BaseParamFilterReader::setProject()

### Parameters

#### $project

`object`

The project this filter is part of. Should not be `null`.

## setReader()

    setReader(\Reader $in)

Inherited

inherited_from | \FilterReader::setReader()
inherited_from | \BaseFilterReader::setReader()
inherited_from | \BaseParamFilterReader::setReader()

### Parameters

#### $in

## Move stream position relative to current pos.

    skip(int $n)

Inherited

inherited_from | \FilterReader::skip()
inherited_from | \BaseFilterReader::skip()
inherited_from | \BaseParamFilterReader::skip()

### Parameters

#### $n

`int`

## Parses the parameters to add user-defined contains strings.

    _initialize()

### Properties

##

    $_parameters

Inherited

inherited_from | \BaseParamFilterReader::$$_parameters

##

    $in : \Reader

Inherited

inherited_from | \FilterReader::$$in
inherited_from | \BaseFilterReader::$$in
inherited_from | \BaseParamFilterReader::$$in

##

    $initialized

Inherited

inherited_from | \BaseFilterReader::$$initialized
inherited_from | \BaseParamFilterReader::$$initialized

##

    $project

Inherited

inherited_from | \BaseFilterReader::$$project
inherited_from | \BaseParamFilterReader::$$project

##

    $_contains : array

##

    $_line : string

### Constants

## The parameter name for the string to match on.

    CONTAINS_KEY : string