SetaPDF_Core_Type_Dictionary_Entry Class representing a pair of a name object and a value in a dictionary

File: /SetaPDF/Core/Type/Dictionary/Entry.php

Class hierarchy

Implements

Summary

Properties

$_observed

Defines if this object is under observation

$_observers

This will be the PDF document or another value holding this one. Initially this will be an array.


Static Methods

writePdfString()

static public void SetaPDF_Core_Type_AbstractType::writePdfString ( SetaPDF_Core_WriteInterface $writer, mixed $value )

Parses a php value to a pdf string and writes it into a writer.

PHP data type -> PDF data type

Null -> SetaPDF_Core_Type_Null

Boolean -> SetaPDF_Core_Type_Boolean

Integer/Double -> SetaPDF_Core_Type_Numeric

String -> SetaPDF_Core_Type_String or SetaPDF_Core_Type_Name(if the string starts with "/")

Indexed array -> SetaPDF_Core_Type_Array

Associative array -> SetaPDF_Core_Type_Dictionary

Parameters
$writer : SetaPDF_Core_WriteInterface
 
$value : mixed
 
Exceptions

Throws InvalidArgumentException


Methods

__construct()

public SetaPDF_Core_Type_Dictionary_Entry::__construct ( [ SetaPDF_Core_Type_Name $key = null [, SetaPDF_Core_Type_AbstractType $value = null ]] )

The constructor.

Parameters
$key : SetaPDF_Core_Type_Name
 
$value : SetaPDF_Core_Type_AbstractType
 

__sleep()

public array SetaPDF_Core_Type_AbstractType::__sleep ( void )

Implementation of __sleep.

We remove the observers from all elements because they will get read if they are waked up in an observed object.

__wakeup()

public void SetaPDF_Core_Type_AbstractType::__wakeup ( void )

Implementation of __wakeup.

Unset the observed flag.

attach()

public void SetaPDF_Core_Type_Dictionary_Entry::attach ( SplObserver $observer )

Add an observer to the object.

Implementation of the observer pattern.

This overwritten method forwards the attach()-call to the key and value.

Parameters
$observer : SplObserver
 

cleanUp()

public void SetaPDF_Core_Type_Dictionary_Entry::cleanUp ( void )

Release objects/memory.

See

deepClone()

public SetaPDF_Core_Type_AbstractType SetaPDF_Core_Type_Dictionary_Entry::deepClone ( SetaPDF_Core_Document $document )

Clone the object recursively in the context of a document.

Parameters
$document : SetaPDF_Core_Document
 

detach()

public void SetaPDF_Core_Type_AbstractType::detach ( SplObserver $observer )

Detach an observer from the object.

Implementation of the Observer Pattern.

Parameters
$observer : SplObserver
 

detachAll()

public void SetaPDF_Core_Type_AbstractType::detachAll ( void )

Detach all observers from this object.

Be careful with this method!!!

ensure()

public SetaPDF_Core_Type_AbstractType SetaPDF_Core_Type_Dictionary_Entry::ensure ( [ boolean $forceObservation = null ] )

Ensures the value.

Parameters
$forceObservation : boolean
 
See

getKey()

public SetaPDF_Core_Type_Name SetaPDF_Core_Type_Dictionary_Entry::getKey ( void )

Get the key object.

getKeyValue()

public string SetaPDF_Core_Type_Dictionary_Entry::getKeyValue ( void )

Get the key value.

getValue()

public SetaPDF_Core_Type_AbstractType|SetaPDF_Core_Type_IndirectReference SetaPDF_Core_Type_Dictionary_Entry::getValue ( void )

Get the value object.

isObserved()

public boolean SetaPDF_Core_Type_AbstractType::isObserved ( void )

Checks if this object is observed.

notify()

public void SetaPDF_Core_Type_AbstractType::notify ( void )

Notifies all attached observers.

Implementation of the Observer Pattern.

Has to be called by any method that changes a value.

setKey()

public void SetaPDF_Core_Type_Dictionary_Entry::setKey ( SetaPDF_Core_Type_Name $key )

Set the key object.

Parameters
$key : SetaPDF_Core_Type_Name
 

setValue()

public void SetaPDF_Core_Type_Dictionary_Entry::setValue ( mixed $value )

Set the value object.

Parameters
$value : mixed
 
Exceptions

Throws InvalidArgumentException

toPdfString()

public string SetaPDF_Core_Type_Dictionary_Entry::toPdfString ( SetaPDF_Core_Document $pdfDocument )

Converts the object to a pdf string.

Parameters
$pdfDocument : SetaPDF_Core_Document

$pdfDocument

toPhp()

public array SetaPDF_Core_Type_Dictionary_Entry::toPhp ( void )

Converts the PDF data type to a PHP array and returns it.

See

update()

public void SetaPDF_Core_Type_Dictionary_Entry::update ( SplSubject $SplSubject )

Triggered if a value of this object is changed.

Forward this to the parent document.

Parameters
$SplSubject : SplSubject
 

writeTo()

public void SetaPDF_Core_Type_Dictionary_Entry::writeTo ( SetaPDF_Core_Document $pdfDocument )

Writes the type as a formatted PDF string to the document.

Parameters
$pdfDocument : SetaPDF_Core_Document