Pdf/FileParserDataSource.php
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-2012 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
- Package
- Zend_Pdf
- Subpackage
- FileParser
- Version
- $Id: FileParserDataSource.php 24806 2012-05-15 11:32:11Z adamlundrigan $
\Zend_Pdf_FileParserDataSource
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 __construct(), __destruct(), readBytes(), and readAllBytes(). Subclasses should also override moveToOffset() and __toString() as appropriate.
- Children
- \Zend_Pdf_FileParserDataSource_String
- \Zend_Pdf_FileParserDataSource_File
- Copyright
- Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
Properties


integer $_offset = 0
Byte offset of the current read position within the data source.
0
Details- Type
- integer
Methods


__destruct() : void
Object destructor.
Closes the data source.
May also perform cleanup tasks such as deleting temporary files.


__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.
Type | Description |
---|---|
string |


getOffset() : integer
Returns the byte offset of the current read position within the data source.
Type | Description |
---|---|
integer |


getSize() : integer
Returns the total size in bytes of the data source.
Type | Description |
---|---|
integer |


moveToOffset(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.
Name | Type | Description |
---|---|---|
$offset | integer | Destination byte offset. |
Exception | Description |
---|---|
\Zend_Pdf_Exception |


readAllBytes() : string
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.
Type | Description |
---|---|
string |


readBytes(integer $byteCount) : string
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.
Name | Type | Description |
---|---|---|
$byteCount | integer | Number of bytes to read. |
Type | Description |
---|---|
string |
Exception | Description |
---|---|
\Zend_Pdf_Exception |


skipBytes(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.
Name | Type | Description |
---|---|---|
$byteCount | integer | Number of bytes to skip. |
Exception | Description |
---|---|
\Zend_Pdf_Exception |