# filters/TailFilter.php

Reads the last <code>n</code> lines of a stream. (Default is last10 lines.)

Example:

Or:

Author
  Yannick Lecaillez
Author
  hans lellelid, hans@velum.net
Copyright
  © 2003 seasonfive. All rights reserved
Package
  phing.filters
See
  \BaseParamFilterReader
Version
  $Revision: 526 $

## \TailFilter
jump to top

Package: phing\filters

Reads the last <code>n</code> lines of a stream. (Default is last10 lines.)

Example:

Or:

Implements
  \ChainableReader
Parent(s)
  \BaseParamFilterReader < \BaseFilterReader < \FilterReader < \Reader
See
  \BaseParamFilterReader
Author
  Yannick Lecaillez
Author
  hans lellelid, hans@velum.net
Copyright
  © 2003 seasonfive. All rights reserved
Version
  $Revision: 526 $

### Constants

`string LINES_KEY = "lines"`

Parameter name for the number of lines to be returned.

  string

### Properties

`array $_lineBuffer= 'array()'`

Array to hold lines.

Default value `array()`Details

Type
  array

`integer $_lines= '10'`

Number of lines to be returned in the filtered stream.

Default value `10` Details

Type
  integer

`$_parameters= 'array()'`
inherited

The passed in parameter array.

Inherited from: \BaseParamFilterReader::$_parameters
Default value `array()`Details

Type
Inherited_from
  \BaseParamFilterReader::$_parameters

`\Reader $in= ''`
inherited

Inherited from: \FilterReader::$in
Details

Type
  \Reader
Inherited_from
  \FilterReader::$in

`$initialized= 'false'`
inherited

Have the parameters passed been interpreted?

Inherited from: \BaseFilterReader::$initialized
Default value `false` Details

Type
Inherited_from
  \BaseFilterReader::$initialized

`$project= 'null'`
inherited

The Phing project this filter is part of.

Inherited from: \BaseFilterReader::$project
Default value `null` Details

Type
Inherited_from
  \BaseFilterReader::$project

### Methods

`__construct( \Reader $in = null ) : void`
inherited

Constructor used by Phing's introspection mechanism.

Inherited from: \BaseFilterReader::__construct()

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.

Parameters

Name | Type | Description
--- | --- | ---
$in | \Reader |

`_initialize( ) : void`

Scans the parameters list for the "lines" parameter and uses it to set the number of lines to be returned in the filtered stream.

`chain( object $reader ) : object`

Creates a new TailFilter using the passed in Reader for instantiation.

Parameters

Name | Type | Description
--- | --- | ---
$reader | object | A Reader object providing the underlying stream. Must not be `null`.

Returns

Type | Description
--- | ---
object | A new filter based on this configuration, but filtering the specified reader.

`close( ) : void`
inherited

Close stream.

Inherited from: \FilterReader::close()
Throws

Exception | Description
--- | ---
\IOException | if there is an error closing stream

`eof( ) : boolean`
inherited

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

Inherited from: \BaseFilterReader::eof()
Returns

Type | Description
--- | ---
boolean |

`getInitialized( ) : boolean`
inherited

Returns the initialized status.

Inherited from: \BaseFilterReader::getInitialized()
Returns

Type | Description
--- | ---
boolean | whether or not the filter is initialized

`getLines( ) : integer`

Returns the number of lines to be returned in the filtered stream.

Returns

Type | Description
--- | ---
integer | The number of lines to be returned in the filtered stream.

`getParameters( ) : void`
inherited

Inherited from: \BaseParamFilterReader::getParameters()
`getProject( ) : object`
inherited

Returns the project this filter is part of.

Inherited from: \BaseFilterReader::getProject()
Returns

Type | Description
--- | ---
object | The project this filter is part of

`getResource( ) : string`
inherited

Returns the filename, url, etc. that is being read from.

Inherited from: \FilterReader::getResource()

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

Returns

Type | Description
--- | ---
string |

`log( string $msg, int $level = Project::MSG_INFO ) : void`
inherited

Convenience method to support logging in filters.

Inherited from: \BaseFilterReader::log()
Parameters

Name | Type | Description
--- | --- | ---
$msg | string | Message to log.
$level | int | Priority level.

`mark( ) : void`
inherited

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

Inherited from: \Reader::mark()

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

`markSupported( ) : boolean`
inherited

Whether marking is supported.

Inherited from: \Reader::markSupported()
Returns

Type | Description
--- | ---
boolean |

`read( int $len = null ) : mixed`

Returns the last n lines of a file.

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

Parameters

Name | Type | Description
--- | --- | ---
$len | int | Num chars to read.

Returns

Type | Description
--- | ---
mixed | The filtered buffer or -1 if EOF.

Throws

Exception | Description
--- | ---
\IOException | If an I/O error occurs

`readLine( ) : \the`
inherited

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

Inherited from: \BaseFilterReader::readLine()

The returned String retains the '\n'.

Returns

Type | Description
--- | ---
\the | line read, or <code>null</code> if the end of the stream has already been reached

Throws

Exception | Description
--- | ---
\IOException | if the underlying reader throws one during reading

`ready( ) : boolean`
inherited

Is stream ready for reading.

Inherited from: \Reader::ready()
Returns

Type | Description
--- | ---
boolean |

`reset( ) : void`
inherited

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

Inherited from: \FilterReader::reset()
`setInitialized( boolean $initialized ) : void`
inherited

Sets the initialized status.

Inherited from: \BaseFilterReader::setInitialized()
Parameters

Name | Type | Description
--- | --- | ---
$initialized | boolean | Whether or not the filter is initialized.

`setLines( integer $lines ) : void`

Sets the number of lines to be returned in the filtered stream.

Parameters

Name | Type | Description
--- | --- | ---
$lines | integer | the number of lines to be returned in the filtered stream.

`setParameters( $parameters ) : void`
inherited

Inherited from: \BaseParamFilterReader::setParameters()
Parameters

Name | Type | Description
--- | --- | ---
$parameters |  |

`setProject( object $project ) : void`
inherited

Sets the project to work with.

Inherited from: \BaseFilterReader::setProject()
Parameters

Name | Type | Description
--- | --- | ---
$project | object | The project this filter is part of. Should not be `null`.

`setReader( $in ) : void`
inherited

Inherited from: \FilterReader::setReader()
Parameters

Name | Type | Description
--- | --- | ---
$in |  |

`skip( int $n ) : void`
inherited

Move stream position relative to current pos.

Inherited from: \FilterReader::skip()
Parameters

Name | Type | Description
--- | --- | ---
$n | int |

Documentation was generated by DocBlox 0.15.1.