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

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

Class hierarchy

Implements

Summary

Properties

$_observed

Defines if this object is under observation

$_observers

The Objects to notify on any change

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


Static Methods

writePdfString()

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

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()

__sleep()

public SetaPDF_Core_Type_AbstractType::__sleep (
void
): array

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()

Implementation of __wakeup.

Unset the observed flag.

attach()

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()

deepClone()

Clone the object recursively in the context of a document.

Parameters
$document : SetaPDF_Core_Document
 

detach()

Detach an observer from the object.

Implementation of the Observer Pattern.

Parameters
$observer : SplObserver
 

detachAll()

Detach all observers from this object.

Be careful with this method!!!

ensure()

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

Ensures the value.

Parameters
$forceObservation : boolean
 
See

getKey()

getKeyValue()

Get the key value.

isObserved()

public SetaPDF_Core_Type_AbstractType::isObserved (
void
): boolean

Checks if this object is observed.

notify()

public SetaPDF_Core_Type_AbstractType::notify (
void
): void

Notifies all attached observers.

Implementation of the Observer Pattern.

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

setKey()

Set the key object.

Parameters
$key : SetaPDF_Core_Type_Name
 

setValue()

public SetaPDF_Core_Type_Dictionary_Entry::setValue (
mixed $value
): void

Set the value object.

Parameters
$value : mixed
 
Exceptions

Throws InvalidArgumentException

toPdfString()

Converts the object to a pdf string.

Parameters
$pdfDocument : SetaPDF_Core_Document

$pdfDocument

toPhp()

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

See

update()

Triggered if a value of this object is changed.

Forward this to the parent document.

Parameters
$SplSubject : SplSubject
 

writeTo()

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

Parameters
$pdfDocument : SetaPDF_Core_Document