Pdf/FileParserDataSource.php

Show: PublicProtectedPrivateinherited
Table of Contents
Zend Framework
LICENSE This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to [email protected] so we can send you a copy immediately.
Category
Zend  
Copyright
Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  
Package
Zend_Pdf  
Subpackage
FileParser  
Version
$Id$  

\Zend_Pdf_FileParserDataSource

Package: Zend_Pdf\FileParser
Abstract helper class for {@link Zend_Pdf_FileParser} that provides the data source for parsing.
Concrete subclasses allow for parsing of in-memory, filesystem, and other sources through a common API. These subclasses also take care of error handling and other mundane tasks. Subclasses must implement at minimum {@link __construct()}, {@link __destruct()}, {@link readBytes()}, and {@link readAllBytes()}. Subclasses should also override {@link moveToOffset()} and {@link __toString()} as appropriate.
Children
\Zend_Pdf_FileParserDataSource_String
\Zend_Pdf_FileParserDataSource_File
Copyright
Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  

Properties

>VPropertyprotectedinteger $_offset = 0
Byte offset of the current read position within the data source.
Default value0Details
Type
integer
>VPropertyprotectedinteger $_size = 0
Total size in bytes of the data source.
Default value0Details
Type
integer

Methods

methodpublic__destruct() : void
abstract

Object destructor. Closes the data source.

May also perform cleanup tasks such as deleting temporary files.
methodpublic__toString() : string

Returns a description of the object for debugging purposes.

Subclasses should override this method to provide a more specific description of the actual object being represented.
Returns
TypeDescription
string
methodpublicgetOffset() : integer

Returns the byte offset of the current read position within the data source.

Returns
TypeDescription
integer
methodpublicgetSize() : integer

Returns the total size in bytes of the data source.

Returns
TypeDescription
integer
methodpublicmoveToOffset(integer $offset) : void

Moves the current read position to the specified byte offset.

Throws an exception you attempt to move before the beginning or beyond the end of the data source. If a subclass needs to perform additional tasks (such as performing a fseek() on a filesystem source), it should do so after calling this parent method.
Parameters
NameTypeDescription
$offsetinteger

Destination byte offset.

Throws
ExceptionDescription
\Zend_Pdf_Exception
methodpublicreadAllBytes() : string
abstract

Returns the entire contents of the data source as a string.

This method may be called at any time and so must preserve the byte offset of the read position, both through $this->_offset and whatever other additional pointers (such as the seek position of a file pointer) that might be used.
Returns
TypeDescription
string
methodpublicreadBytes(integer $byteCount) : string
abstract

Returns the specified number of raw bytes from the data source at the byte offset of the current read position.

Must advance the read position by the number of bytes read by updating $this->_offset. Throws an exception if there is insufficient data to completely fulfill the request or if an error occurs.
Parameters
NameTypeDescription
$byteCountinteger

Number of bytes to read.

Returns
TypeDescription
string
Throws
ExceptionDescription
\Zend_Pdf_Exception
methodpublicskipBytes(integer $byteCount) : void

Shifts the current read position within the data source by the specified number of bytes.

You may move forward (positive numbers) or backward (negative numbers). Throws an exception you attempt to move before the beginning or beyond the end of the data source.
Parameters
NameTypeDescription
$byteCountinteger

Number of bytes to skip.

Throws
ExceptionDescription
\Zend_Pdf_Exception
Documentation was generated by phpDocumentor 2.2.0 .