Class: I2CE MagicData: Difference between revisions

From IHRIS Wiki
No edit summary
(Redirected page to Class: I2CE MagicData (4.1.7))
 
(16 intermediate revisions by the same user not shown)
Line 1: Line 1:
This article describes the class ''I2CE_MagicData''.
#REDIRECT [[Class: I2CE_MagicData (4.1.7)]]
*Extends the class: [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]].
*Parent Classses:  [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]]
*Location: Part of the module [[iHRIS Module List#I2CE|I2CE]] in the package [https://launchpad.net/i2ce I2CE]
*Source: Defined in the file [http://bazaar.launchpad.net/~intrahealth+informatics/i2ce/4.0.0-release/annotate/head:/lib/I2CE_MagicData.php lib/I2CE_MagicData.php]
Configuration class to lookup and save configuration options.
==Variables==
===$instances===
A list of named instances of this class.
*Type: static protected [http://www.php.net/manual/en/language.types.array.php array ] $instances
 
===$last_instance===
The index of the last accessed stored instance of this class
*Type: static protected [http://www.php.net/manual/en/language.types.string.php string ] $last_instance
 
===$instance===
The instance index for this configuration grouping.
*Type: protected [http://www.php.net/manual/en/language.types.string.php string ] $instance
 
===$storage===
A list of storage objects to use to store and retrieve values. Values will be saved using all storage objects and retrieved until a match is found in the order the objects are assigned.
*Type: protected [http://www.php.net/manual/en/language.types.array.php array ] $storage
 
===$num_storage===
*Type: protected $num_storage
 
===$locales===
*Type: protected $locales
 
==Methods==
===__construct()===
Construct a new configuration value or grouping.
*Signature: protected function __construct($name,$parent,$check_key)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $name <br/>The name of this configuration setting.
***Default Value: null
** [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]] $parent <br/>The parent of this configuration setting.
***Default Value: null
** [http://www.php.net/manual/en/language.types.boolean.php boolean ] $check_key <br/>Defaults to true in which case we check that the key is valid.
***Default Value: true
===addStorage()===
Add the given storage object to this instance. The last one added is considered to be the "definitive" one -- the one whose contents should be considered correct.  The first one added should be the one which has quickest access
*Signature: public function addStorage($storage)
*Parameters:
** [[Class: I2CE_MagicDataStorage | I2CE_MagicDataStorage]] $storage
===clearCache()===
Clear caching for each of the storage mechanisms @param  I2CE_MagicDataNode $node. The node we wish to remove from the cache.  If null ( default) we call the clear() method for all but the last added storage mecahnism.  If non-null, we call the destory() method for the node on all but the last storage mechanism.
*Signature: public function clearCache()
*Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean ]
===destroy()===
Destroy the specified node from each of the storage mechanisms
*Signature: public function destroy($node)
*Parameters:
**$node
*Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean ]<br/>true on success
===getPath()===
Return the full path to this configuration setting.
*Signature: public function getPath($show_top)
*Parameters:
** [http://www.php.net/manual/en/language.types.boolean.php boolean ] $show_top <br/>defaults to true if we are to show the parent
***Default Value: true
*Returns: [http://www.php.net/manual/en/language.types.string.php string ]
===getPermanentStorageClass()===
Gets the class of the permanent storage object (the last one added)
*Signature: public function getPermanentStorageClass()
*Returns: [http://www.php.net/manual/en/language.types.string.php string ]
===instance()===
Return an instance of this class based on the index given. This will create the instance if it doesn't exist.
*Signature: static public function instance($index,$replace)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $index
***Default Value: NULL
** [http://www.php.net/manual/en/language.types.boolean.php boolean ] $replace <br/>Defaults to false.  If true and $index is non null, then we create a new instance at $index.
***Default Value: FALSE
*Returns: [[Class: I2CE_MagicData | I2CE_MagicData]]
===pathDivider()===
Return the path divider for this MagicDataNode object
*Signature: protected function pathDivider()
*Returns: [http://www.php.net/manual/en/language.types.string.php string ]
===retrieve()===
Retrieve the given magic data node (which should be a descendent of this instance.)
*Signature: public function retrieve($node)
*Parameters:
** [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]] $node
*Returns: [http://www.php.net/manual/en/language.types.array.php array ]
===setLocales()===
*Signature: public function setLocales($locales)
*Parameters:
**$locales
===store()===
Store the given magic data node (which should be a descendent of this instance.)  Starts storing at the last added storage mechanism until it reaches the first storage mechanism.  If it fails saving at any storage mechanis, it will call the destroy method on that storage mechanism and any remaining one.
*Signature: public function store($node,$max)
*Parameters:
** [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]] $node
** integer $max <br/>The max index of storage objects to save. Defaults to -1 meaning we store on all mechanisms
***Default Value: -1  
*Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean ]<br/>true on success.
===tearDown()===
Clean up all MagicData instances.  Normally, this should not be used. Primarily for unit testing.
*Signature: static public function tearDown()
==Inherited Methods==
===__get()===
This public method is inherited from [[Class: I2CE_MagicDataNode#__get() | I2CE_MagicDataNode->__get()]]
 
===__isset()===
This public method is inherited from [[Class: I2CE_MagicDataNode#__isset() | I2CE_MagicDataNode->__isset()]]
 
===__set()===
This public method is inherited from [[Class: I2CE_MagicDataNode#__set() | I2CE_MagicDataNode->__set()]]
 
===__toString()===
This public method is inherited from [[Class: I2CE_MagicDataNode#__toString() | I2CE_MagicDataNode->__toString()]]
 
===__unset()===
This public method is inherited from [[Class: I2CE_MagicDataNode#__unset() | I2CE_MagicDataNode->__unset()]]
 
===checkKey()===
This public method is inherited from [[Class: I2CE_MagicDataNode#checkKey() | I2CE_MagicDataNode->checkKey()]]
 
===count()===
This public method is inherited from [[Class: I2CE_MagicDataNode#count() | I2CE_MagicDataNode->count()]]
 
===current()===
This public method is inherited from [[Class: I2CE_MagicDataNode#current() | I2CE_MagicDataNode->current()]]
 
===erase()===
This public method is inherited from [[Class: I2CE_MagicDataNode#erase() | I2CE_MagicDataNode->erase()]]
 
===eraseChildren()===
This public method is inherited from [[Class: I2CE_MagicDataNode#eraseChildren() | I2CE_MagicDataNode->eraseChildren()]]
 
===getAsArray()===
This public method is inherited from [[Class: I2CE_MagicDataNode#getAsArray() | I2CE_MagicDataNode->getAsArray()]]
 
===getAttribute()===
This public method is inherited from [[Class: I2CE_MagicDataNode#getAttribute() | I2CE_MagicDataNode->getAttribute()]]
 
===getAttributes()===
This public method is inherited from [[Class: I2CE_MagicDataNode#getAttributes() | I2CE_MagicDataNode->getAttributes()]]
 
===getChildren()===
This public method is inherited from [[Class: I2CE_MagicDataNode#getChildren() | I2CE_MagicDataNode->getChildren()]]
 
===getKeys()===
This public method is inherited from [[Class: I2CE_MagicDataNode#getKeys() | I2CE_MagicDataNode->getKeys()]]
 
===getName()===
This public method is inherited from [[Class: I2CE_MagicDataNode#getName() | I2CE_MagicDataNode->getName()]]
 
===getParent()===
This public method is inherited from [[Class: I2CE_MagicDataNode#getParent() | I2CE_MagicDataNode->getParent()]]
 
===getSaveValue()===
This public method is inherited from [[Class: I2CE_MagicDataNode#getSaveValue() | I2CE_MagicDataNode->getSaveValue()]]
 
===getTranslation()===
This public method is inherited from [[Class: I2CE_MagicDataNode#getTranslation() | I2CE_MagicDataNode->getTranslation()]]
 
===getTranslations()===
This public method is inherited from [[Class: I2CE_MagicDataNode#getTranslations() | I2CE_MagicDataNode->getTranslations()]]
 
===getType()===
This public method is inherited from [[Class: I2CE_MagicDataNode#getType() | I2CE_MagicDataNode->getType()]]
 
===getValue()===
This public method is inherited from [[Class: I2CE_MagicDataNode#getValue() | I2CE_MagicDataNode->getValue()]]
 
===hasAttribute()===
This public method is inherited from [[Class: I2CE_MagicDataNode#hasAttribute() | I2CE_MagicDataNode->hasAttribute()]]
 
===hasChildren()===
This public method is inherited from [[Class: I2CE_MagicDataNode#hasChildren() | I2CE_MagicDataNode->hasChildren()]]
 
===is_indeterminate()===
This public method is inherited from [[Class: I2CE_MagicDataNode#is_indeterminate() | I2CE_MagicDataNode->is_indeterminate()]]
 
===is_parent()===
This public method is inherited from [[Class: I2CE_MagicDataNode#is_parent() | I2CE_MagicDataNode->is_parent()]]
 
===is_root()===
This public method is inherited from [[Class: I2CE_MagicDataNode#is_root() | I2CE_MagicDataNode->is_root()]]
 
===is_scalar()===
This public method is inherited from [[Class: I2CE_MagicDataNode#is_scalar() | I2CE_MagicDataNode->is_scalar()]]
 
===is_translatable()===
This public method is inherited from [[Class: I2CE_MagicDataNode#is_translatable() | I2CE_MagicDataNode->is_translatable()]]
 
===is_translated()===
This public method is inherited from [[Class: I2CE_MagicDataNode#is_translated() | I2CE_MagicDataNode->is_translated()]]
 
===key()===
This public method is inherited from [[Class: I2CE_MagicDataNode#key() | I2CE_MagicDataNode->key()]]
 
===krsort()===
This public method is inherited from [[Class: I2CE_MagicDataNode#krsort() | I2CE_MagicDataNode->krsort()]]
 
===ksort()===
This public method is inherited from [[Class: I2CE_MagicDataNode#ksort() | I2CE_MagicDataNode->ksort()]]
 
===next()===
This public method is inherited from [[Class: I2CE_MagicDataNode#next() | I2CE_MagicDataNode->next()]]
 
===offsetExists()===
This public method is inherited from [[Class: I2CE_MagicDataNode#offsetExists() | I2CE_MagicDataNode->offsetExists()]]
 
===offsetGet()===
This public method is inherited from [[Class: I2CE_MagicDataNode#offsetGet() | I2CE_MagicDataNode->offsetGet()]]
 
===offsetSet()===
This public method is inherited from [[Class: I2CE_MagicDataNode#offsetSet() | I2CE_MagicDataNode->offsetSet()]]
 
===offsetUnset()===
This public method is inherited from [[Class: I2CE_MagicDataNode#offsetUnset() | I2CE_MagicDataNode->offsetUnset()]]
 
===pathExists()===
This public method is inherited from [[Class: I2CE_MagicDataNode#pathExists() | I2CE_MagicDataNode->pathExists()]]
 
===pop()===
This public method is inherited from [[Class: I2CE_MagicDataNode#pop() | I2CE_MagicDataNode->pop()]]
 
===push()===
This public method is inherited from [[Class: I2CE_MagicDataNode#push() | I2CE_MagicDataNode->push()]]
 
===raiseError()===
This public method is inherited from [[Class: I2CE_MagicDataNode#raiseError() | I2CE_MagicDataNode->raiseError()]]
 
===removeAttribute()===
This public method is inherited from [[Class: I2CE_MagicDataNode#removeAttribute() | I2CE_MagicDataNode->removeAttribute()]]
 
===removeTranslation()===
This public method is inherited from [[Class: I2CE_MagicDataNode#removeTranslation() | I2CE_MagicDataNode->removeTranslation()]]
 
===rewind()===
This public method is inherited from [[Class: I2CE_MagicDataNode#rewind() | I2CE_MagicDataNode->rewind()]]
 
===setAttribute()===
This public method is inherited from [[Class: I2CE_MagicDataNode#setAttribute() | I2CE_MagicDataNode->setAttribute()]]
 
===setIfIsSet()===
This public method is inherited from [[Class: I2CE_MagicDataNode#setIfIsSet() | I2CE_MagicDataNode->setIfIsSet()]]
 
===setTranslatable()===
This public method is inherited from [[Class: I2CE_MagicDataNode#setTranslatable() | I2CE_MagicDataNode->setTranslatable()]]
 
===setTranslation()===
This public method is inherited from [[Class: I2CE_MagicDataNode#setTranslation() | I2CE_MagicDataNode->setTranslation()]]
 
===setValue()===
This public method is inherited from [[Class: I2CE_MagicDataNode#setValue() | I2CE_MagicDataNode->setValue()]]
 
===set_parent()===
This public method is inherited from [[Class: I2CE_MagicDataNode#set_parent() | I2CE_MagicDataNode->set_parent()]]
 
===set_scalar()===
This public method is inherited from [[Class: I2CE_MagicDataNode#set_scalar() | I2CE_MagicDataNode->set_scalar()]]
 
===traverse()===
This public method is inherited from [[Class: I2CE_MagicDataNode#traverse() | I2CE_MagicDataNode->traverse()]]
 
===uksort()===
This public method is inherited from [[Class: I2CE_MagicDataNode#uksort() | I2CE_MagicDataNode->uksort()]]
 
===unpopulate()===
This public method is inherited from [[Class: I2CE_MagicDataNode#unpopulate() | I2CE_MagicDataNode->unpopulate()]]
 
===valid()===
This public method is inherited from [[Class: I2CE_MagicDataNode#valid() | I2CE_MagicDataNode->valid()]]
 
===volatile()===
This public method is inherited from [[Class: I2CE_MagicDataNode#volatile() | I2CE_MagicDataNode->volatile()]]
 
===_getAsArray()===
This protected method is inherited from [[Class: I2CE_MagicDataNode#_getAsArray() | I2CE_MagicDataNode->_getAsArray()]]
 
===_getAttribute()===
This protected method is inherited from [[Class: I2CE_MagicDataNode#_getAttribute() | I2CE_MagicDataNode->_getAttribute()]]
 
===_getAttributes()===
This protected method is inherited from [[Class: I2CE_MagicDataNode#_getAttributes() | I2CE_MagicDataNode->_getAttributes()]]
 
===_hasAttribute()===
This protected method is inherited from [[Class: I2CE_MagicDataNode#_hasAttribute() | I2CE_MagicDataNode->_hasAttribute()]]
 
===_removeAttribute()===
This protected method is inherited from [[Class: I2CE_MagicDataNode#_removeAttribute() | I2CE_MagicDataNode->_removeAttribute()]]
 
===_setAttribute()===
This protected method is inherited from [[Class: I2CE_MagicDataNode#_setAttribute() | I2CE_MagicDataNode->_setAttribute()]]
 
===is_populated()===
This protected method is inherited from [[Class: I2CE_MagicDataNode#is_populated() | I2CE_MagicDataNode->is_populated()]]
 
===newAttribute()===
This protected method is inherited from [[Class: I2CE_MagicDataNode#newAttribute() | I2CE_MagicDataNode->newAttribute()]]
 
===newChild()===
This protected method is inherited from [[Class: I2CE_MagicDataNode#newChild() | I2CE_MagicDataNode->newChild()]]
 
===populate()===
This protected method is inherited from [[Class: I2CE_MagicDataNode#populate() | I2CE_MagicDataNode->populate()]]
 
===save()===
This protected method is inherited from [[Class: I2CE_MagicDataNode#save() | I2CE_MagicDataNode->save()]]
 
===setType()===
This protected method is inherited from [[Class: I2CE_MagicDataNode#setType() | I2CE_MagicDataNode->setType()]]
==Inherited Variables==
===$type===
Theis protected variable is inherited from [[Class: I2CE_MagicDataNode#$type | I2CE_MagicDataNode->$type]]
 
===$name===
Theis protected variable is inherited from [[Class: I2CE_MagicDataNode#$name | I2CE_MagicDataNode->$name]]
 
===$value===
Theis protected variable is inherited from [[Class: I2CE_MagicDataNode#$value | I2CE_MagicDataNode->$value]]
 
===$children===
Theis protected variable is inherited from [[Class: I2CE_MagicDataNode#$children | I2CE_MagicDataNode->$children]]
 
===$parent===
Theis protected variable is inherited from [[Class: I2CE_MagicDataNode#$parent | I2CE_MagicDataNode->$parent]]
 
===$parentPath===
Theis protected variable is inherited from [[Class: I2CE_MagicDataNode#$parentPath | I2CE_MagicDataNode->$parentPath]]
 
===$parentPathTop===
Theis protected variable is inherited from [[Class: I2CE_MagicDataNode#$parentPathTop | I2CE_MagicDataNode->$parentPathTop]]
 
===$top===
Theis protected variable is inherited from [[Class: I2CE_MagicDataNode#$top | I2CE_MagicDataNode->$top]]
 
===$volatile===
Theis protected variable is inherited from [[Class: I2CE_MagicDataNode#$volatile | I2CE_MagicDataNode->$volatile]]
 
===$attributes===
Theis protected variable is inherited from [[Class: I2CE_MagicDataNode#$attributes | I2CE_MagicDataNode->$attributes]]
 
 
[[Category:Class Documentation]]

Latest revision as of 09:41, 23 August 2013